/** * @return boolean */ public function execute() { if ($this->executed) { return false; } $this->visitor->endVisitConcatenation($this->expression); $this->executed = true; return true; }
/** * @param Repetition $expression * * @return EndRepetitionAction */ public function dispatchVisitRepetition(Repetition $expression) { $this->visitor->startVisitRepetition($expression); $nextVisitAction = new EndRepetitionAction($expression, $this->visitor); return $nextVisitAction; }