Vcsn  2.1
Be Rational
vcsn::welement< Label, Weight > Struct Template Reference

#include <wet.hh>

Inheritance diagram for vcsn::welement< Label, Weight >:
Collaboration diagram for vcsn::welement< Label, Weight >:

Public Types

using welement_label_t = detail::welement_label< Label >
 
using welement_weight_t = detail::welement_weight< Weight >
 
using label_t = typename welement_label_t::label_t
 
using weight_t = typename welement_weight_t::weight_t
 
using value_t = welement< typename std::remove_reference< label_t >::type, typename std::remove_reference< weight_t >::type >
 
- Public Types inherited from vcsn::detail::welement_label< Label >
using label_t = Label
 
- Public Types inherited from vcsn::detail::welement_weight< Weight >
using weight_t = Weight
 

Public Member Functions

 welement (const label_t &l, const weight_t &w)
 
 operator value_t () const
 
auto operator< (const welement &that) const -> bool
 
auto operator== (const welement &that) const -> bool
 
- Public Member Functions inherited from vcsn::detail::welement_label< Label >
 welement_label (const label_t &l)
 
const label_tlabel () const
 
void label (const label_t &l)
 
- Public Member Functions inherited from vcsn::detail::welement_weight< Weight >
 welement_weight (const weight_t &w)
 
const weight_tweight () const
 
void weight (const weight_t &k)
 

Detailed Description

template<typename Label, typename Weight>
struct vcsn::welement< Label, Weight >

Definition at line 88 of file wet.hh.

Member Typedef Documentation

template<typename Label, typename Weight>
using vcsn::welement< Label, Weight >::label_t = typename welement_label_t::label_t

Definition at line 95 of file wet.hh.

template<typename Label, typename Weight>
using vcsn::welement< Label, Weight >::value_t = welement<typename std::remove_reference<label_t>::type, typename std::remove_reference<weight_t>::type>

Definition at line 99 of file wet.hh.

template<typename Label, typename Weight>
using vcsn::welement< Label, Weight >::weight_t = typename welement_weight_t::weight_t

Definition at line 96 of file wet.hh.

template<typename Label, typename Weight>
using vcsn::welement< Label, Weight >::welement_label_t = detail::welement_label<Label>

Definition at line 92 of file wet.hh.

template<typename Label, typename Weight>
using vcsn::welement< Label, Weight >::welement_weight_t = detail::welement_weight<Weight>

Definition at line 93 of file wet.hh.

Constructor & Destructor Documentation

template<typename Label, typename Weight>
vcsn::welement< Label, Weight >::welement ( const label_t l,
const weight_t w 
)
inline

Definition at line 101 of file wet.hh.

Member Function Documentation

template<typename Label, typename Weight>
vcsn::welement< Label, Weight >::operator value_t ( ) const
inline

Definition at line 106 of file wet.hh.

References vcsn::detail::welement_label< Label >::label(), and vcsn::detail::welement_weight< Weight >::weight().

Here is the call graph for this function:

template<typename Label, typename Weight>
auto vcsn::welement< Label, Weight >::operator< ( const welement< Label, Weight > &  that) const -> bool
inline

Definition at line 111 of file wet.hh.

References vcsn::detail::welement_label< Label >::label().

Here is the call graph for this function:

template<typename Label, typename Weight>
auto vcsn::welement< Label, Weight >::operator== ( const welement< Label, Weight > &  that) const -> bool
inline

Definition at line 117 of file wet.hh.

References vcsn::detail::welement_label< Label >::label().

Here is the call graph for this function:


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