|  | Vcsn
    2.0
    Be Rational | 
| ►Nstd | STL namespace | 
| Chash< boost::dynamic_bitset<> > | |
| Chash< boost::flyweight< T, boost::flyweights::no_tracking > > | |
| Chash< map< Key, Value, Compare, Alloc > > | |
| Chash< pair< T1, T2 > > | |
| Chash< set< T, Compare, Alloc > > | |
| Chash< std::tuple< Elements...> > | |
| Chash< unordered_set< Key, Hash, KeyEqual, Alloc > > | |
| Chash< vcsn::empty_t > | |
| ►Nvcsn | |
| ►Nast | |
| Cast_node | |
| Cautomaton | |
| Ccontext | |
| Ccontext_parser | |
| Ccontext_printer | |
| Ccontext_visitor | |
| Cgenset | Represents the "alphabets", or "generator set" | 
| Cletterset | Support for letterset<GenSet> | 
| Cnullableset | |
| Coneset | |
| Cother | |
| Cpolynomialset | |
| Cratexpset | |
| Csignature_printer | |
| Ctupleset | |
| Cweightset | |
| Cwordset | Support for wordset<GenSet> | 
| ►Nctx | |
| ►Ndetail | |
| ►Ndot | Implementation details of the dot parser | 
| Cdriver | State and public interface for Dot parsing | 
| ►Cparser | A Bison parser | 
| Cbasic_symbol | A complete symbol | 
| Cby_state | Type access provider for state based symbols | 
| Cby_type | Type access provider for token (enum) based symbols | 
| Cstack_symbol_type | "Internal" symbol: element of the stack | 
| Csyntax_error | Syntax errors thrown from user actions | 
| Ctoken | Tokens | 
| Cunion_type | An auxiliary type to compute the largest semantic type | 
| Cpaths_t | |
| Cslice | Present a slice of the top of a stack | 
| Cstack | |
| Cvariant | A char[S] buffer to store and retrieve objects | 
| Cand_ | |
| Cand_< F1 > | |
| Cand_< F1, F...> | |
| Cand_<> | |
| Cautomaton_decorator | Aggregate an automaton, and forward calls to it | 
| Cb_impl | |
| Cbackslashify_output_filter | Backslash backslashes | 
| Cblind_automaton_impl | Read-write on an automaton, that hides all tapes but one | 
| Ccomposer | Build the (accessible part of the) composition | 
| Cconcat | |
| Cconcat< index_sequence< I1...>, index_sequence< I2...> > | |
| Cconcat_index_sequence | |
| Cconcat_index_sequence< index_sequence< I1...>, index_sequence< I2...> > | |
| Cconcat_tupleset | |
| Cconcat_tupleset< tupleset< T1...>, tupleset< T2...> > | |
| Ccontext_of | |
| Ccontext_of< vcsn::mutable_automaton< Context > > | |
| Ccontext_t_of_impl | |
| Ccontext_t_of_impl< std::shared_ptr< ValueSet > > | |
| Ccopier | Copy an automaton | 
| Ccycle_identity_impl | Whether all the paths between any two states have the same weight (i.e., for all s0, s1, any two paths p0, p1 between s0 and s1 have the same weight w_{s0,s1}) | 
| Cderived_termer | Compute the derived-term automaton from an expression | 
| Cdeterminized_automaton_impl | The subset construction automaton from another | 
| ►Cdetweighted_automaton_impl | The weighted determinization of weighted automaton | 
| Cstateset | An output state is a list of weighted input states | 
| Cdotter | Format an automaton into Dot | 
| Cdown_caster | A functor that captures the current location (to report errors), and provides "cast" | 
| Cefsmer | Format automaton to EFSM format, based on FSM format | 
| Cenumerater | |
| Cepsilon_acyclic | |
| Cepsilon_acyclic< Aut, false > | |
| Cepsilon_acyclic< Aut, true > | Detect epsilon-circuits | 
| Ceval_if | |
| Ceval_if_c | |
| Cevaluator | |
| Cf2_impl | |
| Cfadoer | Format an automaton into Fado | 
| Cfilter_automaton_impl | Hide some states of an automaton | 
| Cgenset_labelset | This class has no modeling purpose, it only serves to factor code common to letterset, nullableset and wordset | 
| Cgrailer | Format an automaton into Fado | 
| Chidden_label_type | |
| Chidden_label_type< Aut, index_sequence< I...> > | |
| Cif_ | |
| Cif_c | |
| Cif_c< false, T1, T2 > | |
| Cindex_sequence | |
| Cinsplitter | |
| Cint_range | |
| Cint_range< off, index_sequence< I...> > | |
| Cis_valider | |
| Cis_valider< Aut, false > | |
| Cjoin_impl | A structure that implements the computation of join(V1, V2) | 
| Cjoin_impl< b, ratexpset< Context > > | |
| Cjoin_impl< context< LS1, WS1 >, context< LS2, WS2 > > | The join of two contexts | 
| Cjoin_impl< letterset< GenSet >, letterset< GenSet > > | |
| Cjoin_impl< letterset< GenSet >, wordset< GenSet > > | The join with another labelset | 
| Cjoin_impl< letterset< GenSet1 >, ratexpset< Ctx2 > > | Join of a letterset and a ratexpset | 
| Cjoin_impl< LS1, nullableset< LS2 > > | The join with another labelset | 
| Cjoin_impl< nullableset< letterset< GenSet > >, wordset< GenSet > > | |
| Cjoin_impl< nullableset< LS1 >, nullableset< LS2 > > | The join with another labelset | 
| Cjoin_impl< oneset, LS, enable_if_t< LS::has_one()> > | Oneset v LS -> LS if LS::has_one | 
| Cjoin_impl< oneset, LS, enable_if_t<!LS::has_one()> > | Oneset v LS -> nullableset<LS> if !LS::has_one | 
| Cjoin_impl< oneset, oneset > | |
| Cjoin_impl< polynomialset< Ctx1 >, polynomialset< Ctx2 > > | |
| Cjoin_impl< q, ratexpset< Context > > | |
| Cjoin_impl< r, ratexpset< Context > > | |
| Cjoin_impl< rat::identities, rat::identities > | |
| Cjoin_impl< ratexpset< Ctx1 >, ratexpset< Ctx2 > > | The join of two ratexpsets | 
| Cjoin_impl< tupleset< VS1...>, tupleset< VS2...> > | |
| Cjoin_impl< wordset< GenSet >, wordset< GenSet > > | |
| Cjoin_impl< WS1, polynomialset< Ctx2 > > | |
| Cjoin_impl< z, ratexpset< Context > > | |
| Cjoin_impl< zmin, ratexpset< Context > > | |
| Clabel_t_of_impl | |
| Clabel_t_of_impl< std::shared_ptr< ValueSet > > | |
| Clabelset_t_of_impl | |
| Clabelset_t_of_impl< std::shared_ptr< ValueSet > > | |
| Clabelset_types | A traits so that tupleset may define types that may exist | 
| Clabelset_types< decltype(pass{typename ValueSets::word_t()...}, void()), ValueSets...> | Specialization for tuples of labelsets | 
| Claw_traits | The LAW from a LAL | 
| Claw_traits< letterset< GenSet > > | Conversion for letterset<GenSet> to a super wordset | 
| Claw_traits< nullableset< LabelSet > > | Conversion for nullable<LabelSet> to a super wordset | 
| Claw_traits< oneset > | Conversion to a wordset: identity | 
| Claw_traits< ratexpset< Ctx > > | Conversion to a wordset: identity | 
| Claw_traits< tupleset< LabelSets...> > | Conversion to wordset | 
| Claw_traits< wordset< GenSet > > | |
| Cleft_reductioner | |
| Cmake_index_range | |
| Cmake_index_range< S, 0 > | |
| Cmake_index_range< S,-1U > | |
| Cmake_index_sequence | |
| Cmake_index_sequence< 0 > | |
| Cmake_index_sequence< 1 > | |
| Cmin_plus_impl | |
| ►Cmutable_automaton_impl | |
| Cstored_state_t | Data stored for each state | 
| Cnullable_helper | Add support for an empty word to a LabelSet that does not provide such special label to this end | 
| Cnullable_helper< letterset< GenSet > > | Add support for an empty word to a letterset thanks to the one() of its genset | 
| Cnullableset_traits | The smallest nullableset which includes LabelSet | 
| Cnullableset_traits< letterset< GenSet > > | Conversion for letterset<GenSet> to a nullableset | 
| Cnullableset_traits< nullableset< LabelSet > > | Conversion for nullable<LabelSet> to a nullableset: id | 
| Cnullableset_traits< oneset > | Conversion to a nullableset: identity | 
| Cnullableset_traits< ratexpset< Ctx > > | Conversion to a nullableset: identity | 
| Cnullableset_traits< tupleset< LabelSets...>, enable_if_t< tupleset< LabelSets...>::has_one()> > | Conversion to a nullableset: all the labelsets support one | 
| Cnullableset_traits< tupleset< LabelSets...>, enable_if_t<!tupleset< LabelSets...>::has_one()> > | Conversion to a nullableset: not all the labelsets support one | 
| Cnullableset_traits< wordset< GenSet > > | Wordset is already a nullableset | 
| Cor_ | |
| Cor_< F1 > | |
| Cor_< F1, F...> | |
| Cor_<> | |
| Coutputter | Factor common bits in automaton formatting | 
| Cpair_automaton_impl | The pair automaton is used by several algorithms for synchronizing words | 
| Cpartition_automaton_impl | An automaton wrapper whose states form a partition of the state set of another automaton | 
| Cpass | Ignore its arguments | 
| Cpermutation_automaton_impl | An automaton isomorphic to another one | 
| Cproduct_automaton_impl | Build the (accessible part of the) product | 
| ►Cproperer | This class contains the core of the proper algorithm | 
| Cstate_profile | Data needed to compare the elimination order between states | 
| Cproperer< Aut, false > | |
| ►Cq_impl | |
| Cvalue_t | |
| Cqmp_impl | |
| Cquotienter | Apply a quotient onto an automaton: fuse equivalent states | 
| Cr_impl | |
| Crank | Number of tapes | 
| Crank< tupleset< LabelSet...> > | |
| Cratexp_automaton_impl | An incremental automaton whose states are ratexps | 
| Creal_context_impl | |
| Creal_context_impl< blind_automaton< Tape, Aut > > | |
| Creal_context_impl< permutation_automaton< Aut > > | |
| Creverse_postorder_impl | Get all vertices in reverse postorder by using depth first search | 
| Crmin_impl | |
| Cscc_kosaraju_impl | Use Kosajaju algorithm for finding all of strongly connected components | 
| Cscc_tarjan_impl | Use Tarjan's algorithm to find all strongly connected components | 
| Cselect | |
| Cselect< q > | |
| Cselect< r > | |
| Cselect< z > | |
| Csfinae_true | |
| Csorter | A function to sort an automaton | 
| Cstandard_operations | |
| Cstar_heighter | |
| Cstate_eliminator | |
| Cstate_eliminator< Aut, labels_are_one > | Eliminate states in an automaton whose labelset is oneset | 
| Cstate_eliminator< Aut, labels_are_ratexps > | Eliminate states in an automaton whose labelset is a ratexpset | 
| Cstate_t_of_impl | |
| Cstate_t_of_impl< std::shared_ptr< ValueSet > > | |
| Csynchronizer | |
| Ctikzer | Format automaton to TikZ format | 
| ►Ctransition_map | Cache the outgoing transitions of an automaton as efficient maps label -> vector<(weight, dst)> | 
| Ctransition_ | Outgoing signature: weight, destination | 
| Ctransition_< true, Dummy > | Outgoing signature: weight, destination, transition identifier | 
| Ctransition_t_of_impl | |
| Ctransition_t_of_impl< std::shared_ptr< ValueSet > > | |
| Ctranspose_automaton_impl | Read-write on an automaton, that transposes everything | 
| Ctransposer | |
| Ctuple_automaton_impl | An automaton whose states are tuples of states of automata | 
| Ctuple_printer | |
| Ctuple_printer< Tuple, 1 > | |
| Cuniversaler | Functor for universal | 
| Cweight_t_of_impl | |
| Cweight_t_of_impl< std::shared_ptr< ValueSet > > | |
| Cweightset_t_of_impl | |
| Cweightset_t_of_impl< std::shared_ptr< ValueSet > > | |
| Cz_impl | |
| Czmin_impl | |
| ►Ndetail_moore | |
| Cminimizer | |
| ►Ndetail_signature | |
| ►Cminimizer | |
| Csignature_equal_to | |
| Csignature_hasher | |
| Csignature_multimap | |
| Cstate_output_for_label_t | |
| ►Ndetail_weighted | |
| ►Cminimizer | |
| Clabel_less | |
| Clabel_to_weights_and_states_t | |
| Csignature_equal_to | |
| Csignature_hasher | |
| Csignature_multimap | |
| Cstate_output_for_label_t | |
| ►Ndyn | FIXME: duplicate code with determinize | 
| ►Ndetail | |
| Cautomaton_base | Base class for automata | 
| Cautomaton_wrapper | A wrapped typed automaton | 
| Ccontext_base | Template-less root for contexts | 
| Ccontext_wrapper | A wrapped typed context | 
| Cexpansion_base | An abstract expansion | 
| Cexpansion_wrapper | Aggregate a expansion and its expansionset | 
| Clabel_base | An abstract label | 
| Clabel_wrapper | Aggregate a label and its labelset | 
| Cpolynomial_base | An abstract polynomial | 
| Cpolynomial_wrapper | Aggregate a polynomial and its polynomialset | 
| Cratexp_base | An abstract ratexp | 
| Cratexp_wrapper | Aggregate a ratexp and its ratexpset | 
| Cratexpset_base | Abstract wrapper around a (typeful) ratexpset | 
| Cratexpset_wrapper | Wrapper around a ratexpset | 
| CRegistry | |
| Cweight_base | An abstract weight | 
| Cweight_wrapper | Aggregate a weight and its weightset | 
| Cjit_error | An exception suited for our compilation errors | 
| ►Nrat | |
| Catom | |
| Cbraced_ratexp | |
| Cconst_visitor | |
| Cconstant | |
| Cconstant_term_visitor | |
| Ccopier | |
| Cderivation_visitor | |
| Cdriver | State and public interface for rational expression parsing | 
| Cexp | The abstract, non-parameterized, root for all rational expression node types | 
| Cexpand_visitor | |
| ►Cexpansionset | |
| Cvalue_t | An expansion | 
| Chash | |
| Cinfo | |
| Cinner | An inner node | 
| Cleaf | The root from which to derive the final node types | 
| Cless_than | |
| Clocation | Abstract a location | 
| Cnode | The abstract parameterized, root for all rational expression types | 
| ►Cparser | A Bison parser | 
| Cbasic_symbol | A complete symbol | 
| Cby_state | Type access provider for state based symbols | 
| Cby_type | Type access provider for token (enum) based symbols | 
| Cstack_symbol_type | "Internal" symbol: element of the stack | 
| Csyntax_error | Syntax errors thrown from user actions | 
| Ctoken | Tokens | 
| Cunion_type | An auxiliary type to compute the largest semantic type | 
| Cposition | Abstract a position | 
| Cprinter | |
| Cratexpset_impl | A typed ratexp set | 
| Csize | |
| Cslice | Present a slice of the top of a stack | 
| Csplit_visitor | Break a rational expression into a polynomial | 
| Cstack | |
| Cstandard_visitor | Build a standard automaton from a ratexp | 
| Cstar_normal_form_visitor | |
| Cthompson_visitor | Build a Thompson automaton from a ratexp | 
| Cto_expansion_visitor | |
| Cunary | |
| Cvariadic | An inner node with multiple children | 
| Cvariant | A char[S] buffer to store and retrieve objects | 
| Cweight_node | An inner node implementing a weight | 
| ►Care_isomorphicer | |
| Cfull_response | A datum specifying if two given automata are isomorphic, and why if they are not | 
| Cas_pair | |
| Cas_tuple | |
| Cautomaton_editor | Abstract Builder (the design pattern) for automata | 
| Cautomatonset | |
| Cchar_letters | |
| Ccontainer_filter_range | |
| Ccontainer_range | Restrict the interface of a container to begin/end | 
| Ccontext | |
| ►Ccross_sequences | |
| Ccross_iterator | Composite iterator | 
| Cedit_automaton | Concrete Builder (the design pattern) for automata | 
| Cempty_t | Empty labels, for LAO | 
| Cequal_to | This is useful to make hashes with labels or weights as keys without using non-default constructors; to be used along with vcsn::hash | 
| ►Cfile_library | Manage search paths | 
| Cnot_found | Exception thrown when a file cannot be located | 
| Chas_size_member_function | Whether T features a size() function | 
| Chash | This is useful to make hashes with labels or weights as keys without using non-default constructors; to be used along with vcsn::equal_to | 
| Cintegral_constant | A simple placeholder for integral constants | 
| Ciomanipulator | Defines the operator() for the classes get_type, set_type and swap_type | 
| Cis_lal | |
| Cis_lan | |
| Cis_lao | |
| Cis_lar | |
| Cis_lat | |
| Cis_law | |
| Clabels_are_letters | |
| Clabels_are_nullable | |
| Clabels_are_one | |
| Clabels_are_ratexps | |
| Clabels_are_tuples | |
| Clabels_are_words | |
| Clazy_automaton_editor | Build an automaton with unknown context | 
| Cless | |
| Cletterset | Implementation of labels are letters | 
| CMilitaryOrder | Military strict order predicate | 
| Cnullableset | Implementation of labels are nullables (letter or empty) | 
| Coneset | Implementation of labels are ones: there is a single instance of label | 
| ►Cpath | Paths in filesystems, i.e., file names | 
| Cinvalid_path | Exception thrown on invalid path | 
| Cpolynomialset | Linear combination of labels: map labels to weights | 
| Cpossibly_labeled_transition_tuple | |
| Cpossibly_labeled_transition_tuple< State, empty_t > | |
| Cproper_labelset | From a labelset, its non-nullable labelset | 
| Cproper_labelset< nullableset< LabelSet > > | |
| Crandom_selector | |
| Cset_alphabet | |
| Csignature | Signature of a function call | 
| Csnamer | |
| Csnamer< bool > | |
| Csnamer< const std::string > | |
| Csnamer< const std::vector< unsigned > > | |
| Csnamer< float > | |
| Csnamer< int > | |
| Csnamer< std::integral_constant< T, Value > > | |
| Csnamer< std::istream > | |
| Csnamer< std::ostream > | |
| Csnamer< std::shared_ptr< T > > | |
| Csnamer< unsigned > | |
| Csnamer< vcsn::direction > | |
| Csnamer< vcsn::rat::identities > | |
| Cstring_letters | Represent alphabets whose "letters" are strings | 
| Ctransition_tuple | |
| Ctransition_tuple< State, Label, bool > | |
| Ctupleset | A ValueSet which is a Cartesian product of ValueSets | 
| Cvariadic_mul_mixin | Provide a variadic mul on top of a binary mul(), and one() | 
| Cvnamer | |
| Cvnamer< bool > | |
| Cvnamer< const std::string > | |
| Cvnamer< const std::vector< unsigned > > | |
| Cvnamer< float > | |
| Cvnamer< int > | |
| Cvnamer< integral_constant > | |
| Cvnamer< std::integral_constant< T, Value > > | |
| Cvnamer< std::istream > | |
| Cvnamer< std::ostream > | |
| Cvnamer< unsigned > | |
| Cvnamer< vcsn::direction > | |
| Cvnamer< vcsn::rat::identities > | |
| Cwordset | Implementation of labels are words | 
| ►Cxalloc | Allocate slots in std::ostreams | 
| Cget_type | Handle the data to get from the xalloced place | 
| Cset_type | Handle the data to put in the xalloced place | 
| Cswap_type | Swap the data stored in the stream for a given one | 
| ►Czip_sequences | |
| Czip_iterator | Composite iterator | 
| ►Czipped_maps | |
| Citerator | Composite iterator | 
| CConcat | |
| CFlexLexer | |
| CL | |
| Ctype | |
| Ctype | |
| CyyFlexLexer |