Vcsn  2.4
Be Rational
name.hh File Reference
#include <initializer_list>
#include <iostream>
#include <memory>
#include <set>
#include <string>
#include <vector>
#include <boost/optional.hpp>
#include <vcsn/core/rat/identities.hh>
#include <vcsn/dyn/automaton.hh>
#include <vcsn/dyn/value.hh>
#include <vcsn/misc/direction.hh>
#include <vcsn/misc/signature.hh>
#include <vcsn/misc/symbol.hh>
Include dependency graph for name.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  vcsn::snamer< T >
 
struct  vcsn::vnamer< T >
 
struct  vcsn::snamer< std::shared_ptr< T > >
 
struct  vcsn::snamer< bool >
 
struct  vcsn::vnamer< bool >
 
struct  vcsn::snamer< float >
 
struct  vcsn::vnamer< float >
 
struct  vcsn::snamer< int >
 
struct  vcsn::vnamer< int >
 
struct  vcsn::snamer< unsigned >
 
struct  vcsn::vnamer< unsigned >
 
struct  vcsn::snamer< std::istream >
 
struct  vcsn::vnamer< std::istream >
 
struct  vcsn::snamer< const std::string >
 
struct  vcsn::vnamer< const std::string >
 
struct  vcsn::snamer< const std::vector< unsigned > >
 
struct  vcsn::vnamer< const std::vector< unsigned > >
 
struct  vcsn::snamer< const std::set< std::pair< std::string, std::string > > >
 
struct  vcsn::vnamer< const std::set< std::pair< std::string, std::string > > >
 
struct  vcsn::snamer< std::ostream >
 
struct  vcsn::vnamer< std::ostream >
 
struct  vcsn::snamer< boost::optional< unsigned > >
 
struct  vcsn::vnamer< boost::optional< unsigned > >
 
struct  vcsn::snamer< vcsn::rat::identities >
 
struct  vcsn::vnamer< vcsn::rat::identities >
 
struct  vcsn::snamer< vcsn::direction >
 
struct  vcsn::vnamer< vcsn::direction >
 
struct  vcsn::snamer< std::integral_constant< T, Value > >
 
struct  vcsn::vnamer< std::integral_constant< T, Value > >
 
struct  vcsn::integral_constant
 A simple placeholder for integral constants. More...
 
struct  vcsn::vnamer< integral_constant >
 
struct  vcsn::dyn_vector_vnamer< Dyn >
 The vname of a vector of dyn:: objects (e.g., automaton, expression, ...) is the tuple of their vnames. More...
 
struct  vcsn::vnamer< const std::vector< dyn::automaton > >
 vector<dyn::automaton> -> std::tuple<automaton_t, ...>. More...
 
struct  vcsn::vnamer< const std::vector< dyn::context > >
 vector<dyn::context> -> std::tuple<context_t, ...>. More...
 
struct  vcsn::vnamer< const std::vector< dyn::expansion > >
 vector<dyn::expansion> -> std::tuple<expansion_t, ...>. More...
 
struct  vcsn::vnamer< const std::vector< dyn::expression > >
 vector<dyn::expression> -> std::tuple<expression_t, ...>. More...
 
struct  vcsn::vnamer< const std::vector< dyn::label > >
 vector<dyn::label> -> std::tuple<label_t, ...>. More...
 
struct  vcsn::vnamer< const std::vector< dyn::polynomial > >
 vector<dyn::polynomial> -> std::tuple<polynomial_t, ...>. More...
 
struct  vcsn::vnamer< const std::vector< dyn::weight > >
 vector<dyn::weight> -> std::tuple<weight_t, ...>. More...
 
struct  vcsn::snamer< std::tuple< Args... > >
 The sname of a tuple is the tuple of the snames. More...
 

Namespaces

 vcsn
 

Macros

#define DEFINE(...)
 

Functions

template<typename T >
symbol vcsn::sname ()
 
template<typename T >
symbol vcsn::sname (T &)
 
template<typename... Args>
signature vcsn::ssignature ()
 Static signature. More...
 
template<typename T >
symbol vcsn::vname (T &t)
 
template<typename... Args>
signature vcsn::vsignature (Args &&...args)
 The signature of (Args...). More...
 

Macro Definition Documentation

#define DEFINE (   ...)
Value:
template <> \
struct snamer<__VA_ARGS__> \
{ \
static symbol name() \
{ \
auto res = symbol{#__VA_ARGS__}; \
return res; \
} \
}; \
\
template <> \
struct vnamer<__VA_ARGS__> \
{ \
static symbol name(__VA_ARGS__&) \
{ \
auto res = symbol{#__VA_ARGS__}; \
return res; \
} \
};
return res
Definition: multiply.hh:398
boost::flyweight< std::string, boost::flyweights::no_tracking, boost::flyweights::intermodule_holder > symbol
An internalized string.
Definition: symbol.hh:23

Definition at line 113 of file name.hh.