The TestFu.Grammars namespace contains a framwork for implementing Production Grammars.

Classes

  ClassDescription
AlternativeRule
A IRule that choose from a set of sub-IRule.
CollectionRule
Abstract rule containing other rules.
ConditionalRule
If then else rule fashion.
ConditionDelegatePredicate
A IPredicate instance that executes a ConditionDelegate.
CountedProduction
A IProduction class that limits the number of terminal IRule execution.
CountedProduction..::.Factory
Factory for CountedProduction instance.
EventHandlerRule
A IRule that wraps a EventHandler call.
Grammar
A grammar containing a set of rules, a StartRule.
GuardedRule
A IRule that guard an inner IRule instance execution from a specific exceptionType.
MethodInvokerRule
A rule that executes a MethodInvokerRule.
NotExpectedExceptionTypeException
Exception throwed when an exception is catched and is not from the expected type.
NotExpectedMessageException
Exception throwed when an exception message does not match with the message regular expression
Predicates
A static helper class for creating IPredicate.
ProductionException
Expection class used to stop production.
ProductionToken
Default implementation of IProductionToken
ProductionTokenDelegateRule
A rule that executes a ProductionTokenDelegate.
ProductionTokenEventArgs
Summary description for ProductionTokenEventArgs.
Random
System implementation of IRandom
RandomRuleSelector
Uniform random rule selector.
RepetitionRule
A IRule that executes repeatidely an inner IRule
RoundRobinRuleSelector
Round Robin rule selector.
RuleBase
Abstract rule class
RuleList
A collection of elements of type IRule
RuleList..::.Enumerator
Type-specific enumeration class, used by RuleList.GetEnumerator.
Rules
Static helper class for creating rules.
SequenceRule
A sequence of rules.
WeightedRandomRuleSelector
Weighted random rule selector.

Interfaces

  InterfaceDescription
IGrammar
A grammar containing a set of rules, a StartRule.
IPredicate
Predicate that checks a given condition.
IProduction
A production done by a grammar and its set of rules.
IProductionFactory
A factory for IProduction instances.
IProductionToken
An authorization to execute a production.
IRandom
A class that creates random values.
IRule
A production rule
IRuleCollection
A collection of IRule.
IRuleEnumerator
An enumerator over IRule instance.
IRuleList
A list of IRule
IRuleSelector
A object that select a rule between a collection of rules.

Delegates