Mercurial > pub > ImplabNet
diff Implab/Automaton/DFATransitionTable.cs @ 165:e227e78d72e4 ref20160224
DFA refactoring
author | cin |
---|---|
date | Mon, 29 Feb 2016 02:02:17 +0300 |
parents | ec35731ae299 |
children | 96681e9d0cea |
line wrap: on
line diff
--- a/Implab/Automaton/DFATransitionTable.cs Thu Feb 25 02:11:13 2016 +0300 +++ b/Implab/Automaton/DFATransitionTable.cs Mon Feb 29 02:02:17 2016 +0300 @@ -4,8 +4,8 @@ using System.Linq; namespace Implab.Automaton { - public class DFATransitionTable<TTag> : IDFATransitionTableBuilder<TTag> { - DFAStateDescriptior<TTag>[] m_dfaTable; + public class DFATransitionTable<TTag> : IDFATableBuilder { + DFAStateDescriptior[] m_dfaTable; int m_stateCount; int m_symbolCount; @@ -17,7 +17,7 @@ #region IDFADefinition implementation - public DFAStateDescriptior<TTag>[] GetTransitionTable() { + public DFAStateDescriptior[] GetTransitionTable() { if (m_dfaTable == null) { if (m_stateCount <= 0) throw new InvalidOperationException("Invalid automaton definition: states count = {0}", m_stateCount); @@ -108,7 +108,7 @@ #endregion protected void Optimize<TInput, TState>( - IDFATransitionTableBuilder<TTag> optimalDFA, + IDFATableBuilder<TTag> optimalDFA, IAlphabet<TInput> inputAlphabet, IAlphabetBuilder<TInput> optimalInputAlphabet, IAlphabet<TState> stateAlphabet,