Vcsn  2.0
Be Rational
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
vcsn::rat::derivation_visitor< RatExpSet > Class Template Reference

#include <derivation.hh>

Inheritance diagram for vcsn::rat::derivation_visitor< RatExpSet >:
Collaboration diagram for vcsn::rat::derivation_visitor< RatExpSet >:

Public Types

using ratexpset_t = RatExpSet
 
using context_t = context_t_of< ratexpset_t >
 
using labelset_t = labelset_t_of< context_t >
 
using label_t = label_t_of< context_t >
 
using ratexp_t = typename ratexpset_t::value_t
 
using weightset_t = weightset_t_of< ratexpset_t >
 
using weight_t = typename weightset_t::value_t
 
using polynomialset_t = ratexp_polynomialset_t< ratexpset_t >
 
using polynomial_t = typename polynomialset_t::value_t
 
using super_t = typename ratexpset_t::const_visitor
 
using node_t = typename super_t::node_t
 

Public Member Functions

 derivation_visitor (const ratexpset_t &rs)
 
polynomial_t operator() (const ratexp_t &v, label_t var)
 
ratexp_t ratexp (const polynomial_t p)
 
 VCSN_RAT_VISIT (zero,)
 
 VCSN_RAT_VISIT (one,)
 
 VCSN_RAT_VISIT (atom, e)
 
 VCSN_RAT_VISIT (sum, e)
 
 VCSN_RAT_VISIT (prod, e)
 
 VCSN_RAT_VISIT (conjunction, e)
 
 VCSN_RAT_VISIT (shuffle, e)
 
 VCSN_RAT_VISIT (complement, e)
 
 VCSN_RAT_VISIT (star, e)
 
 VCSN_RAT_VISIT (lweight, e)
 
 VCSN_RAT_VISIT (rweight, e)
 

Static Public Member Functions

static constexpr const charme ()
 

Private Attributes

ratexpset_t rs_
 
weightset_t ws_ = *rs_.weightset()
 Shorthand to the weightset. More...
 
polynomialset_t ps_ = make_ratexp_polynomialset(rs_)
 
polynomial_t res_
 The result. More...
 
label_t variable_
 The derivation variable. More...
 

Detailed Description

template<typename RatExpSet>
class vcsn::rat::derivation_visitor< RatExpSet >

Definition at line 24 of file derivation.hh.

Member Typedef Documentation

template<typename RatExpSet >
using vcsn::rat::derivation_visitor< RatExpSet >::context_t = context_t_of<ratexpset_t>

Definition at line 29 of file derivation.hh.

template<typename RatExpSet >
using vcsn::rat::derivation_visitor< RatExpSet >::label_t = label_t_of<context_t>

Definition at line 31 of file derivation.hh.

template<typename RatExpSet >
using vcsn::rat::derivation_visitor< RatExpSet >::labelset_t = labelset_t_of<context_t>

Definition at line 30 of file derivation.hh.

template<typename RatExpSet >
using vcsn::rat::derivation_visitor< RatExpSet >::node_t = typename super_t::node_t

Definition at line 40 of file derivation.hh.

template<typename RatExpSet >
using vcsn::rat::derivation_visitor< RatExpSet >::polynomial_t = typename polynomialset_t::value_t

Definition at line 37 of file derivation.hh.

template<typename RatExpSet >
using vcsn::rat::derivation_visitor< RatExpSet >::polynomialset_t = ratexp_polynomialset_t<ratexpset_t>

Definition at line 36 of file derivation.hh.

template<typename RatExpSet >
using vcsn::rat::derivation_visitor< RatExpSet >::ratexp_t = typename ratexpset_t::value_t

Definition at line 32 of file derivation.hh.

template<typename RatExpSet >
using vcsn::rat::derivation_visitor< RatExpSet >::ratexpset_t = RatExpSet

Definition at line 28 of file derivation.hh.

template<typename RatExpSet >
using vcsn::rat::derivation_visitor< RatExpSet >::super_t = typename ratexpset_t::const_visitor

Definition at line 39 of file derivation.hh.

template<typename RatExpSet >
using vcsn::rat::derivation_visitor< RatExpSet >::weight_t = typename weightset_t::value_t

Definition at line 34 of file derivation.hh.

template<typename RatExpSet >
using vcsn::rat::derivation_visitor< RatExpSet >::weightset_t = weightset_t_of<ratexpset_t>

Definition at line 33 of file derivation.hh.

Constructor & Destructor Documentation

template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::derivation_visitor ( const ratexpset_t rs)
inline

Definition at line 44 of file derivation.hh.

Member Function Documentation

template<typename RatExpSet >
static constexpr const char* vcsn::rat::derivation_visitor< RatExpSet >::me ( )
inlinestatic

Definition at line 42 of file derivation.hh.

template<typename RatExpSet >
polynomial_t vcsn::rat::derivation_visitor< RatExpSet >::operator() ( const ratexp_t v,
label_t  var 
)
inline
template<typename RatExpSet >
ratexp_t vcsn::rat::derivation_visitor< RatExpSet >::ratexp ( const polynomial_t  p)
inline
template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT ( zero  )
inline

Definition at line 69 of file derivation.hh.

References vcsn::rat::derivation_visitor< RatExpSet >::ps_, vcsn::rat::derivation_visitor< RatExpSet >::res_, and vcsn::polynomialset< Context >::zero().

Here is the call graph for this function:

template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT ( one  )
inline

Definition at line 74 of file derivation.hh.

References vcsn::rat::derivation_visitor< RatExpSet >::ps_, vcsn::rat::derivation_visitor< RatExpSet >::res_, and vcsn::polynomialset< Context >::zero().

Here is the call graph for this function:

template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT ( atom  ,
 
)
inline

Definition at line 79 of file derivation.hh.

References vcsn::polynomialset< Context >::one(), vcsn::rat::derivation_visitor< RatExpSet >::ps_, vcsn::rat::derivation_visitor< RatExpSet >::res_, vcsn::rat::derivation_visitor< RatExpSet >::variable_, and vcsn::polynomialset< Context >::zero().

Here is the call graph for this function:

template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT ( sum  ,
 
)
inline

Definition at line 87 of file derivation.hh.

References vcsn::polynomialset< Context >::add_here(), vcsn::rat::derivation_visitor< RatExpSet >::ps_, vcsn::rat::derivation_visitor< RatExpSet >::res_, and vcsn::polynomialset< Context >::zero().

Here is the call graph for this function:

template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT ( prod  ,
 
)
inline
template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT ( conjunction  ,
 
)
inline

Definition at line 117 of file derivation.hh.

References vcsn::polynomialset< Context >::conjunction(), vcsn::rat::derivation_visitor< RatExpSet >::ps_, and vcsn::rat::derivation_visitor< RatExpSet >::res_.

Here is the call graph for this function:

template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT ( shuffle  ,
 
)
inline

Definition at line 131 of file derivation.hh.

References vcsn::polynomialset< Context >::add_here(), vcsn::rat::derivation_visitor< RatExpSet >::ps_, vcsn::rat::derivation_visitor< RatExpSet >::res_, and vcsn::polynomialset< Context >::zero().

Here is the call graph for this function:

template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT ( complement  ,
 
)
inline

Definition at line 154 of file derivation.hh.

References vcsn::rat::derivation_visitor< RatExpSet >::ratexp(), vcsn::rat::derivation_visitor< RatExpSet >::res_, vcsn::rat::derivation_visitor< RatExpSet >::rs_, and vcsn::rat::derivation_visitor< RatExpSet >::ws_.

Here is the call graph for this function:

template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT ( star  ,
 
)
inline
template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT ( lweight  ,
 
)
inline

Definition at line 169 of file derivation.hh.

References vcsn::polynomialset< Context >::lmul(), vcsn::rat::derivation_visitor< RatExpSet >::ps_, and vcsn::rat::derivation_visitor< RatExpSet >::res_.

Here is the call graph for this function:

template<typename RatExpSet >
vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT ( rweight  ,
 
)
inline

Definition at line 175 of file derivation.hh.

References vcsn::polynomialset< Context >::add_here(), vcsn::rat::derivation_visitor< RatExpSet >::ps_, vcsn::rat::derivation_visitor< RatExpSet >::res_, and vcsn::rat::derivation_visitor< RatExpSet >::rs_.

Here is the call graph for this function:

Member Data Documentation

template<typename RatExpSet >
polynomialset_t vcsn::rat::derivation_visitor< RatExpSet >::ps_ = make_ratexp_polynomialset(rs_)
private
template<typename RatExpSet >
polynomial_t vcsn::rat::derivation_visitor< RatExpSet >::res_
private
template<typename RatExpSet >
label_t vcsn::rat::derivation_visitor< RatExpSet >::variable_
private
template<typename RatExpSet >
weightset_t vcsn::rat::derivation_visitor< RatExpSet >::ws_ = *rs_.weightset()
private

Shorthand to the weightset.

Definition at line 187 of file derivation.hh.

Referenced by vcsn::rat::derivation_visitor< RatExpSet >::VCSN_RAT_VISIT().


The documentation for this class was generated from the following file: