##// END OF EJS Templates
fixed regression: race condition in Promise...
fixed regression: race condition in Promise DFA refactoring

File last commit:

r160:5802131432e4 v2
r160:5802131432e4 v2
Show More
EDFADefinition.cs
29 lines | 880 B | text/x-csharp | CSharpLexer
cin
Added initial JSON support...
r55 using Implab;
using System;
namespace Implab.Parsing {
cin
refactoring, code cleanup
r158 public class EDFADefinition<T> : DFADefinition where T : struct, IConvertible {
cin
Promises: SignalXXX methods merged into SignalHandler method....
r156 readonly EnumAlphabet<T> m_alphabet;
cin
Added initial JSON support...
r55
public EnumAlphabet<T> Alphabet {
get { return m_alphabet; }
}
cin
refactoring, code cleanup
r158 public EDFADefinition(EnumAlphabet<T> alphabet) : base(alphabet.Count) {
cin
Added initial JSON support...
r55 m_alphabet = alphabet;
}
cin
sync
r157 public void DefineTransition(int s1, int s2, T input) {
DefineTransition(s1, s2, m_alphabet.Translate(input));
}
cin
Added initial JSON support...
r55 public EDFADefinition<T> Optimize() {
cin
fixed regression: race condition in Promise...
r160
return (EDFADefinition<T>)Optimize(alphabet => new EDFADefinition<T>((EnumAlphabet<T>)alphabet), m_alphabet, new EnumAlphabet<T>());
cin
Added initial JSON support...
r55 }
public void PrintDFA() {
PrintDFA(m_alphabet);
}
}
}