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

Breadcrumb

  1. Drupal Core 11.1.x

TokenEmulator.php

Namespace

PhpParser\Lexer\TokenEmulator

File

vendor/nikic/php-parser/lib/PhpParser/Lexer/TokenEmulator/TokenEmulator.php

View source
<?php

declare (strict_types=1);
namespace PhpParser\Lexer\TokenEmulator;

use PhpParser\PhpVersion;
use PhpParser\Token;

/** @internal */
abstract class TokenEmulator {
    public abstract function getPhpVersion() : PhpVersion;
    public abstract function isEmulationNeeded(string $code) : bool;
    
    /**
     * @param Token[] $tokens Original tokens
     * @return Token[] Modified Tokens
     */
    public abstract function emulate(string $code, array $tokens) : array;
    
    /**
     * @param Token[] $tokens Original tokens
     * @return Token[] Modified Tokens
     */
    public abstract function reverseEmulate(string $code, array $tokens) : array;
    
    /** @param array{int, string, string}[] $patches */
    public function preprocessCode(string $code, array &$patches) : string {
        return $code;
    }

}

Classes

Title Deprecated Summary
TokenEmulator @internal
RSS feed
Powered by Drupal