[ Index ]

PHP Cross Reference of DokuWiki

title

Body

[close]

/inc/Parsing/ParserMode/ -> AbstractMode.php (source)

   1  <?php
   2  
   3  namespace dokuwiki\Parsing\ParserMode;
   4  
   5  use dokuwiki\Parsing\Lexer\Lexer;
   6  
   7  /**
   8   * This class and all the subclasses below are used to reduce the effort required to register
   9   * modes with the Lexer.
  10   *
  11   * @author Harry Fuecks <hfuecks@gmail.com>
  12   */
  13  abstract class AbstractMode implements ModeInterface
  14  {
  15      /** @var Lexer $Lexer will be injected on loading FIXME this should be done by setter */
  16      public $Lexer;
  17      protected $allowedModes = [];
  18  
  19      /** @inheritdoc */
  20      abstract public function getSort();
  21  
  22      /** @inheritdoc */
  23      public function preConnect()
  24      {
  25      }
  26  
  27      /** @inheritdoc */
  28      public function connectTo($mode)
  29      {
  30      }
  31  
  32      /** @inheritdoc */
  33      public function postConnect()
  34      {
  35      }
  36  
  37      /** @inheritdoc */
  38      public function accepts($mode)
  39      {
  40          return in_array($mode, (array) $this->allowedModes);
  41      }
  42  }