stock-trek 0.6.0

Stock Trek time-series analysis
Documentation
use crate::{
    order::order_factory::OrderFactory,
    predicates::predicates_factory::PredicatesFactory,
    resolvers::resolvers_factory::ResolversFactory,
    values::values_factory::{
        CalculationValuesFactory, LiteralValuesFactory, PortfolioValuesFactory,
        ScratchPadValuesFactory,
    },
};

pub struct ResolverContext {
    pub calculations: CalculationValuesFactory,
    pub literals: LiteralValuesFactory,
    pub orders: OrderFactory,
    pub portfolio: PortfolioValuesFactory,
    pub predicates: PredicatesFactory,
    pub resolvers: ResolversFactory,
    pub scratch_pad: ScratchPadValuesFactory,
}

impl ResolverContext {
    pub fn new() -> Self {
        Self {
            calculations: CalculationValuesFactory,
            literals: LiteralValuesFactory,
            orders: OrderFactory,
            portfolio: PortfolioValuesFactory,
            predicates: PredicatesFactory,
            resolvers: ResolversFactory,
            scratch_pad: ScratchPadValuesFactory,
        }
    }
}

impl Default for ResolverContext {
    fn default() -> Self {
        Self::new()
    }
}