diff --git a/alib2data/src/automaton/TA/NFTA.cpp b/alib2data/src/automaton/TA/NFTA.cpp index da47c080f654908e0d53b810d276cb95183cbbfd..9fab9bf3ba06e8d681f8986f927cd1f5dfe31846 100644 --- a/alib2data/src/automaton/TA/NFTA.cpp +++ b/alib2data/src/automaton/TA/NFTA.cpp @@ -8,9 +8,12 @@ #include "NFTA.h" #include <registration/ValuePrinterRegistration.hpp> +#include <registration/CastRegistration.hpp> namespace { static auto valuePrinter = registration::ValuePrinterRegister < automaton::NFTA < > > ( ); +static auto NFTAFromDFTA = registration::CastRegister < automaton::NFTA < >, automaton::DFTA < > > ( ); + } /* namespace */ diff --git a/alib2data/src/automaton/TA/NFTA.h b/alib2data/src/automaton/TA/NFTA.h index 902d73bba82415df3d95613d15ec6dfec7b47c91..04f362c22cb7d94b08cb2c1220caa068a7c5d793 100644 --- a/alib2data/src/automaton/TA/NFTA.h +++ b/alib2data/src/automaton/TA/NFTA.h @@ -417,7 +417,7 @@ NFTA < SymbolType, RankType, StateType >::NFTA() : NFTA ( ext::set < StateType > template < class SymbolType, class RankType, class StateType > NFTA < SymbolType, RankType, StateType >::NFTA(const DFTA < SymbolType, RankType, StateType > & other) : NFTA ( other.getStates(), other.getInputAlphabet(), other.getFinalStates() ) { - transitions = other.getTransitions ( ); + transitions.insert ( other.getTransitions ( ).begin ( ), other.getTransitions ( ).end ( ) ); } template < class SymbolType, class RankType, class StateType >