Vcsn  2.4
Be Rational
vcsn::dyn::context Class Reference

Template-less root for contexts. More...

#include <context.hh>

Collaboration diagram for vcsn::dyn::context:


struct  base
 Abstract wrapped type. More...
struct  model
 A wrapped type. More...

Public Member Functions

 context ()
template<typename LabelSet , typename WeightSet >
 context (const vcsn::context< LabelSet, WeightSet > &ctx)
 A description of the context, sufficient to build it. More...
symbol vname () const
template<typename Ctx >
auto & as ()
 Downcast to the exact type. More...
template<typename Ctx >
auto & as () const
 Downcast to the exact type. More...
const auto * operator-> () const
 operator bool () const

Private Attributes

std::shared_ptr< baseself_
 The wrapped context. More...

Detailed Description

Template-less root for contexts.

Definition at line 16 of file context.hh.

Constructor & Destructor Documentation

vcsn::dyn::context::context ( )

Definition at line 19 of file context.hh.

template<typename LabelSet , typename WeightSet >
vcsn::dyn::context::context ( const vcsn::context< LabelSet, WeightSet > &  ctx)

A description of the context, sufficient to build it.

Definition at line 25 of file context.hh.

Member Function Documentation

template<typename Ctx >
auto& vcsn::dyn::context::as ( ) const

Downcast to the exact type.

Definition at line 43 of file context.hh.

References vcsn::dyn::context::model< Context >::context(), and vcsn::dyn::detail::dyn_cast().

Here is the call graph for this function:

vcsn::dyn::context::operator bool ( ) const

Definition at line 53 of file context.hh.

const auto* vcsn::dyn::context::operator-> ( ) const

Definition at line 48 of file context.hh.

symbol vcsn::dyn::context::vname ( ) const

Definition at line 29 of file context.hh.

Member Data Documentation

std::shared_ptr<base> vcsn::dyn::context::self_

The wrapped context.

Definition at line 91 of file context.hh.

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