public static IAutomatonTable <Token> BuildAutomatonTable(IEnumerable <string> Rules) { IAutomatonTableFactory <Token> automatonTableFactory; IAutomatonTable <Token> automatonTable; SituationCollectionFactory <Token> situationCollectionFactory; DistinctInputFactory distinctInputFactory; distinctInputFactory = new DistinctInputFactory(new RangeValueProvider()); automatonTableFactory = new AutomatonTableFactory <Token>( ); situationCollectionFactory = new SituationCollectionFactory <Token>(SituationGraphHelper.BuildSituationGraph(Rules.Select(item => RuleHelper.BuildRule(item)).ToArray())); automatonTable = automatonTableFactory.BuildAutomatonTable(situationCollectionFactory, distinctInputFactory); return(automatonTable); }
public static ISituationCollectionFactory <Token> BuildSituationCollectionFactory(IEnumerable <IRule <Token> > Rules) { return(new SituationCollectionFactory <Token>(SituationGraphHelper.BuildSituationGraph(Rules))); }