You are here

class Twig_Error_Syntax in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/twig/twig/lib/Twig/Error/Syntax.php \Twig_Error_Syntax

Exception thrown when a syntax error occurs during lexing or parsing of a template.

@author Fabien Potencier <fabien@symfony.com>

Hierarchy

Expanded class hierarchy of Twig_Error_Syntax

File

vendor/twig/twig/lib/Twig/Error/Syntax.php, line 18

View source
class Twig_Error_Syntax extends Twig_Error {

  /**
   * Tweaks the error message to include suggestions.
   *
   * @param string $name  The original name of the item that does not exist
   * @param array  $items An array of possible items
   */
  public function addSuggestions($name, array $items) {
    if (!($alternatives = self::computeAlternatives($name, $items))) {
      return;
    }
    $this
      ->appendMessage(sprintf(' Did you mean "%s"?', implode('", "', $alternatives)));
  }

  /**
   * @internal
   *
   * To be merged with the addSuggestions() method in 2.0.
   */
  public static function computeAlternatives($name, $items) {
    $alternatives = array();
    foreach ($items as $item) {
      $lev = levenshtein($name, $item);
      if ($lev <= strlen($name) / 3 || false !== strpos($item, $name)) {
        $alternatives[$item] = $lev;
      }
    }
    asort($alternatives);
    return array_keys($alternatives);
  }

}

Members

Namesort descending Modifiers Type Description Overrides
Twig_Error::$filename protected property
Twig_Error::$lineno protected property
Twig_Error::$previous protected property
Twig_Error::$rawMessage protected property
Twig_Error::appendMessage public function
Twig_Error::getRawMessage public function Gets the raw message.
Twig_Error::getTemplateFile public function Gets the filename where the error occurred.
Twig_Error::getTemplateLine public function Gets the template line where the error occurred.
Twig_Error::guess public function
Twig_Error::guessTemplateInfo protected function @internal
Twig_Error::setTemplateFile public function Sets the filename where the error occurred.
Twig_Error::setTemplateLine public function Sets the template line where the error occurred.
Twig_Error::updateRepr protected function @internal
Twig_Error::__call public function For PHP < 5.3.0, provides access to the getPrevious() method.
Twig_Error::__construct public function Constructor. 4
Twig_Error_Syntax::addSuggestions public function Tweaks the error message to include suggestions.
Twig_Error_Syntax::computeAlternatives public static function @internal