Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. PhpDocParserHelper.php

class PhpDocParserHelper

@internal

Hierarchy

  • class \SlevomatCodingStandard\Helpers\PhpDocParserHelper

Expanded class hierarchy of PhpDocParserHelper

2 files declare their use of PhpDocParserHelper
FullyQualifiedClassNameInAnnotationSniff.php in vendor/slevomat/coding-standard/SlevomatCodingStandard/Sniffs/Namespaces/FullyQualifiedClassNameInAnnotationSniff.php
NullTypeHintOnLastPositionSniff.php in vendor/slevomat/coding-standard/SlevomatCodingStandard/Sniffs/TypeHints/NullTypeHintOnLastPositionSniff.php

File

vendor/slevomat/coding-standard/SlevomatCodingStandard/Helpers/PhpDocParserHelper.php, line 17

Namespace

SlevomatCodingStandard\Helpers
View source
class PhpDocParserHelper {
    public static function getLexer() : Lexer {
        static $lexer;
        if ($lexer === null) {
            $lexer = new Lexer(true);
        }
        return $lexer;
    }
    public static function getParser() : PhpDocParser {
        static $parser;
        if ($parser === null) {
            $usedAttributes = [
                'lines' => true,
                'indexes' => true,
            ];
            $constantExpressionParser = new ConstExprParser(true, true, $usedAttributes);
            $parser = new PhpDocParser(new TypeParser($constantExpressionParser, true, $usedAttributes), $constantExpressionParser, true, true, $usedAttributes, true, true);
        }
        return $parser;
    }
    public static function getPrinter() : Printer {
        static $printer;
        if ($printer === null) {
            $printer = new Printer();
        }
        return $printer;
    }
    
    /**
     * @template T of Node
     * @param T $node
     * @return T
     */
    public static function cloneNode(Node $node) : Node {
        static $cloningTraverser;
        if ($cloningTraverser === null) {
            $cloningTraverser = new NodeTraverser([
                new CloningVisitor(),
            ]);
        }
        [
            $cloneNode,
        ] = $cloningTraverser->traverse([
            $node,
        ]);
        return $cloneNode;
    }

}

Members

Title Sort descending Modifiers Object type Summary
PhpDocParserHelper::cloneNode public static function * @template T of Node
*
PhpDocParserHelper::getLexer public static function
PhpDocParserHelper::getParser public static function
PhpDocParserHelper::getPrinter public static function

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal