module Citrus::Nonterminal

A Nonterminal is a Rule that augments the matching behavior of one or more other rules. Nonterminals may not match directly on the input, but instead invoke the rule(s) they contain to determine if a match can be made from the collective result.

Attributes

rules[R]

An array of the actual Rule objects this rule uses to match.

Public Class Methods

new(rules=[]) click to toggle source
# File lib/citrus.rb, line 978
def initialize(rules=[])
  @rules = rules.map {|r| Rule.for(r) }
end