CFG Plugin2.2 Output Syntax

From FSL
Jump to: navigation, search

The CFG plugin generates a simplified CFG from the input CFG. Specifically, it removes unreachable and nongenerating productions, expands repetition constructs, and inserts the new start symbol used in LR table generation. Since this does not compile into any other logic, any instance of MOP will need to handle that step. Additionally, the creation events and enables sets are visible at this stage as are some monitor generation statistics.

Example

The following example monitors hasNext* next for violation.

<mop>
<Client>Web</Client>
<Events>hasnext next</Events>
<Property>
<Logic>cfg</Logic>
<Formula>S -> hasnext HasNextStar next,
HasNextStar -> HasNextStar hasnext | epsilon </Formula>
</Property>
<Categories>fail</Categories>
<CreationEvents>hasnext next</CreationEvents>
<Message>done</Message>
<EnableSets>// fail Enables
{hasnext=[[], [hasnext], [hasnext, next], [next]], next=[[],
[hasnext], [hasnext, next], [next]]}</EnableSets>
<Statistics>
<TotalMOPCount>1658</TotalMOPCount>
<CurrentClient>Web</CurrentClient>
<ClientCount>61</ClientCount>
<CurrentLogic>cfg</CurrentLogic>
<LogicCount>81</LogicCount>
<ClientAndLogicCount>3</ClientAndLogicCount>
<TotalExecutionTime>330ms</TotalExecutionTime>
</Statistics>
</mop>
Personal tools
Namespaces

Variants
Actions
Navigation