1#ifndef DUNE_COPASI_MODEL_LOCAL_EQUATIONS_FUNCTOR_FACTORY_PARSER_HH
2#define DUNE_COPASI_MODEL_LOCAL_EQUATIONS_FUNCTOR_FACTORY_PARSER_HH
11template<std::
size_t dim>
15 using Scalar = FieldVector<double, 1>;
16 using Vector = FieldVector<double, dim>;
17 using Tensor = FieldMatrix<double, dim, dim>;
26 , _parser_type{ parser_type }
40 const ParameterTree& ,
42 int = 0)
const override;
45 const ParameterTree& ,
47 int = 0)
const override;
50 const ParameterTree& ,
52 int = 0)
const override;
54 std::shared_ptr<const ParserContext>
parser_context()
const {
return _parser_context; };
57 [[nodiscard]]
ScalarFunctor parse_scalar_expression(
const ParameterTree& ,
62 std::shared_ptr<const ParserContext> _parser_context;
67#ifndef DUNE_COPASI_PRECOMPILED_MODE
Definition: functor_factory_parser.hh:13
FunctorFactoryParser(FunctorFactoryParser &&)=delete
ScalarFunctor make_scalar(std::string_view, const ParameterTree &, const LocalDomain< dim > &, int=0) const override
Definition: functor_factory_parser.impl.hh:26
FunctorFactoryParser(ParserType parser_type=default_parser, std::shared_ptr< const ParserContext > parser_context=nullptr)
Definition: functor_factory_parser.hh:23
FunctorFactoryParser(const FunctorFactoryParser &)=delete
typename FunctorFactory< dim >::ScalarFunctor ScalarFunctor
Definition: functor_factory_parser.hh:19
VectorFunctor make_vector(std::string_view, const ParameterTree &, const LocalDomain< dim > &, int=0) const override
Definition: functor_factory_parser.impl.hh:36
FunctorFactoryParser & operator=(const FunctorFactoryParser &)=delete
std::shared_ptr< const ParserContext > parser_context() const
Definition: functor_factory_parser.hh:54
TensorApplyFunctor make_tensor_apply(std::string_view, const ParameterTree &, const LocalDomain< dim > &, int=0) const override
Definition: functor_factory_parser.impl.hh:65
~FunctorFactoryParser() override=default
FunctorFactoryParser & operator=(FunctorFactoryParser &&)=delete
Definition: functor_factory.hh:24
FieldVector< double, dim > Vector
Definition: functor_factory.hh:27
FieldMatrix< double, dim, dim > Tensor
Definition: functor_factory.hh:28
fu2::unique_function< Vector(Vector) const noexcept > TensorApplyFunctor
Definition: functor_factory.hh:32
FieldVector< double, 1 > Scalar
Definition: functor_factory.hh:26
fu2::unique_function< Vector() const noexcept > VectorFunctor
Definition: functor_factory.hh:31
fu2::unique_function< Scalar() const noexcept > ScalarFunctor
Definition: functor_factory.hh:30
Definition: axis_names.hh:7
const ParserType default_parser
ParserType
Definition: factory.hh:12
Definition: local_domain.hh:15