diff --git a/docs/developments/julia_structs.qmd b/docs/developments/julia_structs.qmd index 09b2ee21f..1c0790631 100644 --- a/docs/developments/julia_structs.qmd +++ b/docs/developments/julia_structs.qmd @@ -8,15 +8,20 @@ Below the composite type that represents all different aspects of a `Wflow.Model network, parameters, clock, model type, configuration and input and output. ```julia -struct Model{L,V,R,W,T} - config::Config # all configuration options - network::Network # connectivity information, directed graph - lateral::L # lateral model that holds lateral state, moves along network - vertical::V # vertical model that holds vertical state, independent of each other - clock::Clock # to keep track of simulation time - reader::R # provides the model with dynamic input - writer::W # writes model output - type::T # model type +struct Model{ + L <: Lateral, + V <: AbstractLandSurface, + R <: NCReader, + T <: AbstractModelType, +} <: AbstractModel{T} + config::Config # all configuration options + network::Network # connectivity information, directed graph + lateral::L # lateral model that holds lateral state, moves along network + vertical::V # vertical model that holds vertical state, independent of each other + clock::Clock # to keep track of simulation time + reader::R # provides the model with dynamic input + writer::Writer # writes model output + type::T # model type end ```