# betterdocs/3.8.9/includes/Dependencies/SuperClosure/Analyzer/Token.php

BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ &amp; Chatbot, version 3.8.9. 71 lines.

- Page: https://pluginprobe.com/plugins/betterdocs/3.8.9/code/includes/Dependencies/SuperClosure/Analyzer/Token.php
- Raw: https://pluginprobe.com/plugins/betterdocs/3.8.9/raw/includes/Dependencies/SuperClosure/Analyzer/Token.php
- Modified: 2023-08-14T08:41:14+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/betterdocs/3.8.9/code/includes/Dependencies/SuperClosure/Analyzer/Token.php#L10-L20`.

```php
<?php namespace WPDeveloper\BetterDocs\Dependencies\SuperClosure\Analyzer;

/**
 * A Token object represents and individual token parsed from PHP code.
 *
 * Each Token object is a normalized token created from the result of the
 * `get_token_all()`. function, which is part of PHP's tokenizer.
 *
 * @link http://us2.php.net/manual/en/tokens.php
 */
class Token
{
    /**
     * @var string The token name. Always null for literal tokens.
     */
    public $name;

    /**
     * @var int|null The token's integer value. Always null for literal tokens.
     */
    public $value;

    /**
     * @var string The PHP code of the token.
     */
    public $code;

    /**
     * @var int|null The line number of the token in the original code.
     */
    public $line;

    /**
     * Constructs a token object.
     *
     * @param string   $code
     * @param int|null $value
     * @param int|null $line
     *
     * @throws \InvalidArgumentException
     */
    public function __construct($code, $value = null, $line = null)
    {
        if (is_array($code)) {
            list($value, $code, $line) = array_pad($code, 3, null);
        }

        $this->code = $code;
        $this->value = $value;
        $this->line = $line;
        $this->name = $value ? token_name($value) : null;
    }

    /**
     * Determines if the token's value/code is equal to the specified value.
     *
     * @param mixed $value The value to check.
     *
     * @return bool True if the token is equal to the value.
     */
    public function is($value)
    {
        return ($this->code === $value || $this->value === $value);
    }

    public function __toString()
    {
        return $this->code;
    }
}

```
