/** * Adds a function to the function definitions * * @param FunctionDefinition $func * @param array $statement */ public function addFunction(FunctionDefinition $func, $statement = null) { $funcName = strtolower($func->getInternalName()); if (isset($this->functionDefinitions[$funcName])) { throw new CompilerException("Function '" . $func->getCompleteName() . "' was defined more than one time", $statement); } $this->functionDefinitions[$funcName] = $func; }