Package cruise.umple.parser.rules

  • Class Summary 
    Class Description
    BalancedRule
    Balanced rules ensure that braces are balanced, that is, that the corresponding brace is matched.
    ChainRule
    name : [[rule]] [[rule]]* Similar to the Choice rule, except all sub rules must be successful when parsing(similar to an 'and' being performed on a hypotheical "isSuccess" for each rule) Because of the possibility for subrules to be optional, this Rule type must support back tracking, where after a failure, the rule will remove tokens from the growing return token when it needs to reconsider a sub rule as being parsable.
    ChoiceRule
    name : [[rule]] ( | [[rule]] )* The basic parsing rule.
    ParsingCouple
    ParsingCouples are used by balanced rules to quickly find the corresponding brace.
    RepeatableRule
    name: [[rule]](option) Repeatable rules are rules that are repeated sequencially one after the other in some form option: ? means either the rule does not parse or it does once and only once, i.e.
    RootRule
    The only difference between a root rule and a choice rule is that after parsing the parse position must be at the end of the file for this rule to pass
    Terminal
    Terminals are the only rules that actually don't use sub rules, instead, they use regex to compute whether there is a successful parse.