##// END OF EJS Templates
Promises: SignalXXX methods merged into SignalHandler method....
Promises: SignalXXX methods merged into SignalHandler method. Components: RunnableComponent In progress

File last commit:

r156:97fbbf816844 v2
r156:97fbbf816844 v2
Show More
EDFADefinition.cs
32 lines | 889 B | text/x-csharp | CSharpLexer
using Implab;
using System;
namespace Implab.Parsing {
public class EDFADefinition<T> : DFADefinitionBase where T : struct, IConvertible {
readonly EnumAlphabet<T> m_alphabet;
public EnumAlphabet<T> Alphabet {
get { return m_alphabet; }
}
public EDFADefinition(EnumAlphabet<T> alphabet) {
Safe.ArgumentNotNull(alphabet, "alphabet");
m_alphabet = alphabet;
}
public override int AlphabetSize {
get { return m_alphabet.Count; }
}
public EDFADefinition<T> Optimize() {
var optimized = new EDFADefinition<T>(new EnumAlphabet<T>());
Optimize(optimized, m_alphabet, optimized.Alphabet);
return optimized;
}
public void PrintDFA() {
PrintDFA(m_alphabet);
}
}
}