1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
//! Path-generator abstraction over the sampled path type.
//!
//! Ports the `path_generator_type` role of `ql/methods/montecarlo/mctraits.hpp`:
//! `SingleVariate` binds it to `PathGenerator<rsg_type>` over [`Path`]
//! (`mctraits.hpp:44`), `MultiVariate` to `MultiPathGenerator<rsg_type>` over
//! [`MultiPath`] (`mctraits.hpp:55`). This trait is the Rust seam that lets
//! [`MonteCarloModel`](super::MonteCarloModel) drive either without duplicating
//! the accumulation loop.
//!
//! [`Path`]: super::Path
//! [`MultiPath`]: super::MultiPath
use crateQlResult;
use crateSample;
use crateSize;
/// A generator of weighted sample paths (the `path_generator_type` policy,
/// `mctraits.hpp:44,55`).