rules[] = $rule; } /** * Setter fot the start property * * @param $symbolName */ public function setStart($symbolName) { $this->start = $symbolName; } /** * Getter for the rules * * @return Rule[] */ public function getRules() { return $this->rules; } /** * Returns the whole grammar (or to be more precise, its rules) as a string * * @return string */ public function __toString() { $parts = []; foreach ($this->rules as $rule) { $parts[] = $rule->__toString(); } return implode(' '.PHP_EOL, $parts); } }