first commit
This commit is contained in:
		
							
								
								
									
										7
									
								
								vendor/phpdocumentor/reflection-common/.github/dependabot.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								vendor/phpdocumentor/reflection-common/.github/dependabot.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,7 @@
 | 
			
		||||
version: 2
 | 
			
		||||
updates:
 | 
			
		||||
- package-ecosystem: composer
 | 
			
		||||
  directory: "/"
 | 
			
		||||
  schedule:
 | 
			
		||||
    interval: daily
 | 
			
		||||
  open-pull-requests-limit: 10
 | 
			
		||||
							
								
								
									
										223
									
								
								vendor/phpdocumentor/reflection-common/.github/workflows/push.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										223
									
								
								vendor/phpdocumentor/reflection-common/.github/workflows/push.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,223 @@
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches:
 | 
			
		||||
      - 2.x
 | 
			
		||||
  pull_request:
 | 
			
		||||
name: Qa workflow
 | 
			
		||||
jobs:
 | 
			
		||||
  setup:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
      - name: Restore/cache vendor folder
 | 
			
		||||
        uses: actions/cache@v1
 | 
			
		||||
        with:
 | 
			
		||||
          path: vendor
 | 
			
		||||
          key: all-build-${{ hashFiles('**/composer.lock') }}
 | 
			
		||||
          restore-keys: |
 | 
			
		||||
            all-build-${{ hashFiles('**/composer.lock') }}
 | 
			
		||||
            all-build-
 | 
			
		||||
 | 
			
		||||
      - name: Restore/cache tools folder
 | 
			
		||||
        uses: actions/cache@v1
 | 
			
		||||
        with:
 | 
			
		||||
          path: tools
 | 
			
		||||
          key: all-tools-${{ github.sha }}
 | 
			
		||||
          restore-keys: |
 | 
			
		||||
            all-tools-${{ github.sha }}-
 | 
			
		||||
            all-tools-
 | 
			
		||||
 | 
			
		||||
      - name: composer
 | 
			
		||||
        uses: docker://composer
 | 
			
		||||
        env:
 | 
			
		||||
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
        with:
 | 
			
		||||
          args: install --no-interaction --prefer-dist --optimize-autoloader
 | 
			
		||||
 | 
			
		||||
      - name: Install phive
 | 
			
		||||
        run: make install-phive
 | 
			
		||||
 | 
			
		||||
      - name: Install PHAR dependencies
 | 
			
		||||
        run: tools/phive.phar --no-progress install --copy --trust-gpg-keys 4AA394086372C20A,8A03EA3B385DBAA1 --force-accept-unsigned
 | 
			
		||||
 | 
			
		||||
  phpunit-with-coverage:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    name: Unit tests
 | 
			
		||||
    needs: setup
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
      - name: Setup PHP
 | 
			
		||||
        uses: shivammathur/setup-php@v2
 | 
			
		||||
        with:
 | 
			
		||||
          php-version: 7.2
 | 
			
		||||
          ini-values: memory_limit=2G, display_errors=On, error_reporting=-1
 | 
			
		||||
          coverage: pcov
 | 
			
		||||
 | 
			
		||||
      - name: Restore/cache tools folder
 | 
			
		||||
        uses: actions/cache@v1
 | 
			
		||||
        with:
 | 
			
		||||
          path: tools
 | 
			
		||||
          key: all-tools-${{ github.sha }}
 | 
			
		||||
          restore-keys: |
 | 
			
		||||
            all-tools-${{ github.sha }}-
 | 
			
		||||
            all-tools-
 | 
			
		||||
 | 
			
		||||
      - name: Get composer cache directory
 | 
			
		||||
        id: composer-cache
 | 
			
		||||
        run: echo "::set-output name=dir::$(composer config cache-files-dir)"
 | 
			
		||||
 | 
			
		||||
      - name: Cache composer dependencies
 | 
			
		||||
        uses: actions/cache@v1
 | 
			
		||||
        with:
 | 
			
		||||
          path: ${{ steps.composer-cache.outputs.dir }}
 | 
			
		||||
          key: ubuntu-latest-composer-${{ hashFiles('**/composer.lock') }}
 | 
			
		||||
          restore-keys: ubuntu-latest-composer-
 | 
			
		||||
 | 
			
		||||
      - name: Install Composer dependencies
 | 
			
		||||
        run: |
 | 
			
		||||
          composer install --no-progress --no-suggest --prefer-dist --optimize-autoloader
 | 
			
		||||
 | 
			
		||||
      - name: Run PHPUnit
 | 
			
		||||
        run: php tools/phpunit
 | 
			
		||||
 | 
			
		||||
  phpunit:
 | 
			
		||||
    runs-on: ${{ matrix.operating-system }}
 | 
			
		||||
    strategy:
 | 
			
		||||
      matrix:
 | 
			
		||||
        operating-system:
 | 
			
		||||
          - ubuntu-latest
 | 
			
		||||
          - windows-latest
 | 
			
		||||
          - macOS-latest
 | 
			
		||||
        php-versions: ['7.2', '7.3', '7.4', '8.0']
 | 
			
		||||
    name: Unit tests for PHP version ${{ matrix.php-versions }} on ${{ matrix.operating-system }}
 | 
			
		||||
    needs:
 | 
			
		||||
      - setup
 | 
			
		||||
      - phpunit-with-coverage
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
      - name: Restore/cache tools folder
 | 
			
		||||
        uses: actions/cache@v1
 | 
			
		||||
        with:
 | 
			
		||||
          path: tools
 | 
			
		||||
          key: all-tools-${{ github.sha }}
 | 
			
		||||
          restore-keys: |
 | 
			
		||||
            all-tools-${{ github.sha }}-
 | 
			
		||||
            all-tools-
 | 
			
		||||
 | 
			
		||||
      - name: Setup PHP
 | 
			
		||||
        uses: shivammathur/setup-php@v2
 | 
			
		||||
        with:
 | 
			
		||||
          php-version: ${{ matrix.php-versions }}
 | 
			
		||||
          ini-values: memory_limit=2G, display_errors=On, error_reporting=-1
 | 
			
		||||
          coverage: none
 | 
			
		||||
 | 
			
		||||
      - name: Get composer cache directory
 | 
			
		||||
        id: composer-cache
 | 
			
		||||
        run: echo "::set-output name=dir::$(composer config cache-files-dir)"
 | 
			
		||||
 | 
			
		||||
      - name: Cache composer dependencies
 | 
			
		||||
        uses: actions/cache@v1
 | 
			
		||||
        with:
 | 
			
		||||
          path: ${{ steps.composer-cache.outputs.dir }}
 | 
			
		||||
          key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
 | 
			
		||||
          restore-keys: ${{ runner.os }}-composer-
 | 
			
		||||
 | 
			
		||||
      - name: Install Composer dependencies
 | 
			
		||||
        run: |
 | 
			
		||||
          composer install --no-progress --no-suggest --prefer-dist --optimize-autoloader
 | 
			
		||||
 | 
			
		||||
      - name: Run PHPUnit
 | 
			
		||||
        continue-on-error: true
 | 
			
		||||
        run: php tools/phpunit
 | 
			
		||||
 | 
			
		||||
  codestyle:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    needs: [setup, phpunit]
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v2
 | 
			
		||||
      - name: Restore/cache vendor folder
 | 
			
		||||
        uses: actions/cache@v1
 | 
			
		||||
        with:
 | 
			
		||||
          path: vendor
 | 
			
		||||
          key: all-build-${{ hashFiles('**/composer.lock') }}
 | 
			
		||||
          restore-keys: |
 | 
			
		||||
            all-build-${{ hashFiles('**/composer.lock') }}
 | 
			
		||||
            all-build-
 | 
			
		||||
      - name: Code style check
 | 
			
		||||
        uses: phpDocumentor/coding-standard@latest
 | 
			
		||||
        with:
 | 
			
		||||
          args: -s
 | 
			
		||||
 | 
			
		||||
  phpstan:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    needs: [setup, phpunit]
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v2
 | 
			
		||||
      - name: Restore/cache vendor folder
 | 
			
		||||
        uses: actions/cache@v1
 | 
			
		||||
        with:
 | 
			
		||||
          path: vendor
 | 
			
		||||
          key: all-build-${{ hashFiles('**/composer.lock') }}
 | 
			
		||||
          restore-keys: |
 | 
			
		||||
            all-build-${{ hashFiles('**/composer.lock') }}
 | 
			
		||||
            all-build-
 | 
			
		||||
      - name: PHPStan
 | 
			
		||||
        uses: phpDocumentor/phpstan-ga@latest
 | 
			
		||||
        env:
 | 
			
		||||
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
        with:
 | 
			
		||||
          args: analyse src --configuration phpstan.neon
 | 
			
		||||
 | 
			
		||||
  psalm:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    needs: [setup, phpunit]
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
      - name: Setup PHP
 | 
			
		||||
        uses: shivammathur/setup-php@v2
 | 
			
		||||
        with:
 | 
			
		||||
          php-version: 7.2
 | 
			
		||||
          ini-values: memory_limit=2G, display_errors=On, error_reporting=-1
 | 
			
		||||
          tools: psalm
 | 
			
		||||
          coverage: none
 | 
			
		||||
 | 
			
		||||
      - name: Get composer cache directory
 | 
			
		||||
        id: composer-cache
 | 
			
		||||
        run: echo "::set-output name=dir::$(composer config cache-files-dir)"
 | 
			
		||||
 | 
			
		||||
      - name: Cache composer dependencies
 | 
			
		||||
        uses: actions/cache@v1
 | 
			
		||||
        with:
 | 
			
		||||
          path: ${{ steps.composer-cache.outputs.dir }}
 | 
			
		||||
          key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
 | 
			
		||||
          restore-keys: ${{ runner.os }}-composer-
 | 
			
		||||
 | 
			
		||||
      - name: Install Composer dependencies
 | 
			
		||||
        run: |
 | 
			
		||||
          composer install --no-progress --no-suggest --prefer-dist --optimize-autoloader
 | 
			
		||||
 | 
			
		||||
      - name: Psalm
 | 
			
		||||
        run: psalm --output-format=github
 | 
			
		||||
 | 
			
		||||
  bc_check:
 | 
			
		||||
    name: BC Check
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    needs: [setup, phpunit]
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v2
 | 
			
		||||
      - name: fetch tags
 | 
			
		||||
        run: git fetch --depth=1 origin +refs/tags/*:refs/tags/*
 | 
			
		||||
      - name: Restore/cache vendor folder
 | 
			
		||||
        uses: actions/cache@v1
 | 
			
		||||
        with:
 | 
			
		||||
          path: vendor
 | 
			
		||||
          key: all-build-${{ hashFiles('**/composer.lock') }}
 | 
			
		||||
          restore-keys: |
 | 
			
		||||
            all-build-${{ hashFiles('**/composer.lock') }}
 | 
			
		||||
            all-build-
 | 
			
		||||
      - name: Roave BC Check
 | 
			
		||||
        uses: docker://nyholm/roave-bc-check-ga
 | 
			
		||||
							
								
								
									
										22
									
								
								vendor/phpdocumentor/reflection-common/LICENSE
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								vendor/phpdocumentor/reflection-common/LICENSE
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,22 @@
 | 
			
		||||
The MIT License (MIT)
 | 
			
		||||
 | 
			
		||||
Copyright (c) 2015 phpDocumentor
 | 
			
		||||
 | 
			
		||||
Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
			
		||||
of this software and associated documentation files (the "Software"), to deal
 | 
			
		||||
in the Software without restriction, including without limitation the rights
 | 
			
		||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 | 
			
		||||
copies of the Software, and to permit persons to whom the Software is
 | 
			
		||||
furnished to do so, subject to the following conditions:
 | 
			
		||||
 | 
			
		||||
The above copyright notice and this permission notice shall be included in all
 | 
			
		||||
copies or substantial portions of the Software.
 | 
			
		||||
 | 
			
		||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | 
			
		||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 | 
			
		||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 | 
			
		||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | 
			
		||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 | 
			
		||||
SOFTWARE.
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										11
									
								
								vendor/phpdocumentor/reflection-common/README.md
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								vendor/phpdocumentor/reflection-common/README.md
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,11 @@
 | 
			
		||||
[](https://opensource.org/licenses/MIT)
 | 
			
		||||

 | 
			
		||||
[](https://coveralls.io/github/phpDocumentor/ReflectionCommon?branch=master)
 | 
			
		||||
[](https://scrutinizer-ci.com/g/phpDocumentor/ReflectionCommon/?branch=master)
 | 
			
		||||
[](https://scrutinizer-ci.com/g/phpDocumentor/ReflectionCommon/?branch=master)
 | 
			
		||||
[](https://packagist.org/packages/phpDocumentor/Reflection-Common)
 | 
			
		||||
[](https://packagist.org/packages/phpDocumentor/Reflection-Common)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ReflectionCommon
 | 
			
		||||
================
 | 
			
		||||
							
								
								
									
										28
									
								
								vendor/phpdocumentor/reflection-common/composer.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								vendor/phpdocumentor/reflection-common/composer.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,28 @@
 | 
			
		||||
{
 | 
			
		||||
    "name": "phpdocumentor/reflection-common",
 | 
			
		||||
    "keywords": ["phpdoc", "phpDocumentor", "reflection", "static analysis", "FQSEN"],
 | 
			
		||||
    "homepage": "http://www.phpdoc.org",
 | 
			
		||||
    "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
 | 
			
		||||
    "license": "MIT",
 | 
			
		||||
    "authors": [
 | 
			
		||||
        {
 | 
			
		||||
            "name": "Jaap van Otterdijk",
 | 
			
		||||
            "email": "opensource@ijaap.nl"
 | 
			
		||||
        }
 | 
			
		||||
    ],
 | 
			
		||||
    "require": {
 | 
			
		||||
        "php": "^7.2 || ^8.0"
 | 
			
		||||
    },
 | 
			
		||||
    "autoload" : {
 | 
			
		||||
      "psr-4" : {
 | 
			
		||||
        "phpDocumentor\\Reflection\\": "src/"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "require-dev": {
 | 
			
		||||
    },
 | 
			
		||||
    "extra": {
 | 
			
		||||
        "branch-alias": {
 | 
			
		||||
            "dev-2.x": "2.x-dev"
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										30
									
								
								vendor/phpdocumentor/reflection-common/src/Element.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								vendor/phpdocumentor/reflection-common/src/Element.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,30 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
declare(strict_types=1);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * phpDocumentor
 | 
			
		||||
 *
 | 
			
		||||
 * For the full copyright and license information, please view the LICENSE
 | 
			
		||||
 * file that was distributed with this source code.
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://phpdoc.org
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace phpDocumentor\Reflection;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Interface for Api Elements
 | 
			
		||||
 */
 | 
			
		||||
interface Element
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the Fqsen of the element.
 | 
			
		||||
     */
 | 
			
		||||
    public function getFqsen() : Fqsen;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the name of the element.
 | 
			
		||||
     */
 | 
			
		||||
    public function getName() : string;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										35
									
								
								vendor/phpdocumentor/reflection-common/src/File.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								vendor/phpdocumentor/reflection-common/src/File.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,35 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
declare(strict_types=1);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * This file is part of phpDocumentor.
 | 
			
		||||
 *
 | 
			
		||||
 * For the full copyright and license information, please view the LICENSE
 | 
			
		||||
 * file that was distributed with this source code.
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://phpdoc.org
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace phpDocumentor\Reflection;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Interface for files processed by the ProjectFactory
 | 
			
		||||
 */
 | 
			
		||||
interface File
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the content of the file as a string.
 | 
			
		||||
     */
 | 
			
		||||
    public function getContents() : string;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns md5 hash of the file.
 | 
			
		||||
     */
 | 
			
		||||
    public function md5() : string;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns an relative path to the file.
 | 
			
		||||
     */
 | 
			
		||||
    public function path() : string;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										89
									
								
								vendor/phpdocumentor/reflection-common/src/Fqsen.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										89
									
								
								vendor/phpdocumentor/reflection-common/src/Fqsen.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,89 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
declare(strict_types=1);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * phpDocumentor
 | 
			
		||||
 *
 | 
			
		||||
 * For the full copyright and license information, please view the LICENSE
 | 
			
		||||
 * file that was distributed with this source code.
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://phpdoc.org
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace phpDocumentor\Reflection;
 | 
			
		||||
 | 
			
		||||
use InvalidArgumentException;
 | 
			
		||||
use function assert;
 | 
			
		||||
use function end;
 | 
			
		||||
use function explode;
 | 
			
		||||
use function is_string;
 | 
			
		||||
use function preg_match;
 | 
			
		||||
use function sprintf;
 | 
			
		||||
use function trim;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Value Object for Fqsen.
 | 
			
		||||
 *
 | 
			
		||||
 * @link https://github.com/phpDocumentor/fig-standards/blob/master/proposed/phpdoc-meta.md
 | 
			
		||||
 *
 | 
			
		||||
 * @psalm-immutable
 | 
			
		||||
 */
 | 
			
		||||
final class Fqsen
 | 
			
		||||
{
 | 
			
		||||
    /** @var string full quallified class name */
 | 
			
		||||
    private $fqsen;
 | 
			
		||||
 | 
			
		||||
    /** @var string name of the element without path. */
 | 
			
		||||
    private $name;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Initializes the object.
 | 
			
		||||
     *
 | 
			
		||||
     * @throws InvalidArgumentException when $fqsen is not matching the format.
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct(string $fqsen)
 | 
			
		||||
    {
 | 
			
		||||
        $matches = [];
 | 
			
		||||
 | 
			
		||||
        $result = preg_match(
 | 
			
		||||
            //phpcs:ignore Generic.Files.LineLength.TooLong
 | 
			
		||||
            '/^\\\\([a-zA-Z_\\x7f-\\xff][a-zA-Z0-9_\\x7f-\\xff\\\\]*)?(?:[:]{2}\\$?([a-zA-Z_\\x7f-\\xff][a-zA-Z0-9_\\x7f-\\xff]*))?(?:\\(\\))?$/',
 | 
			
		||||
            $fqsen,
 | 
			
		||||
            $matches
 | 
			
		||||
        );
 | 
			
		||||
 | 
			
		||||
        if ($result === 0) {
 | 
			
		||||
            throw new InvalidArgumentException(
 | 
			
		||||
                sprintf('"%s" is not a valid Fqsen.', $fqsen)
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $this->fqsen = $fqsen;
 | 
			
		||||
 | 
			
		||||
        if (isset($matches[2])) {
 | 
			
		||||
            $this->name = $matches[2];
 | 
			
		||||
        } else {
 | 
			
		||||
            $matches = explode('\\', $fqsen);
 | 
			
		||||
            $name = end($matches);
 | 
			
		||||
            assert(is_string($name));
 | 
			
		||||
            $this->name = trim($name, '()');
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * converts this class to string.
 | 
			
		||||
     */
 | 
			
		||||
    public function __toString() : string
 | 
			
		||||
    {
 | 
			
		||||
        return $this->fqsen;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the name of the element without path.
 | 
			
		||||
     */
 | 
			
		||||
    public function getName() : string
 | 
			
		||||
    {
 | 
			
		||||
        return $this->name;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										53
									
								
								vendor/phpdocumentor/reflection-common/src/Location.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								vendor/phpdocumentor/reflection-common/src/Location.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,53 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
declare(strict_types=1);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * This file is part of phpDocumentor.
 | 
			
		||||
 *
 | 
			
		||||
 * For the full copyright and license information, please view the LICENSE
 | 
			
		||||
 * file that was distributed with this source code.
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://phpdoc.org
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace phpDocumentor\Reflection;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * The location where an element occurs within a file.
 | 
			
		||||
 *
 | 
			
		||||
 * @psalm-immutable
 | 
			
		||||
 */
 | 
			
		||||
final class Location
 | 
			
		||||
{
 | 
			
		||||
    /** @var int */
 | 
			
		||||
    private $lineNumber = 0;
 | 
			
		||||
 | 
			
		||||
    /** @var int */
 | 
			
		||||
    private $columnNumber = 0;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Initializes the location for an element using its line number in the file and optionally the column number.
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct(int $lineNumber, int $columnNumber = 0)
 | 
			
		||||
    {
 | 
			
		||||
        $this->lineNumber = $lineNumber;
 | 
			
		||||
        $this->columnNumber = $columnNumber;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the line number that is covered by this location.
 | 
			
		||||
     */
 | 
			
		||||
    public function getLineNumber() : int
 | 
			
		||||
    {
 | 
			
		||||
        return $this->lineNumber;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the column number (character position on a line) for this location object.
 | 
			
		||||
     */
 | 
			
		||||
    public function getColumnNumber() : int
 | 
			
		||||
    {
 | 
			
		||||
        return $this->columnNumber;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										25
									
								
								vendor/phpdocumentor/reflection-common/src/Project.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								vendor/phpdocumentor/reflection-common/src/Project.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,25 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
declare(strict_types=1);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * phpDocumentor
 | 
			
		||||
 *
 | 
			
		||||
 * For the full copyright and license information, please view the LICENSE
 | 
			
		||||
 * file that was distributed with this source code.
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://phpdoc.org
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace phpDocumentor\Reflection;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Interface for project. Since the definition of a project can be different per factory this interface will be small.
 | 
			
		||||
 */
 | 
			
		||||
interface Project
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the name of the project.
 | 
			
		||||
     */
 | 
			
		||||
    public function getName() : string;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										28
									
								
								vendor/phpdocumentor/reflection-common/src/ProjectFactory.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								vendor/phpdocumentor/reflection-common/src/ProjectFactory.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,28 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
declare(strict_types=1);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * phpDocumentor
 | 
			
		||||
 *
 | 
			
		||||
 * For the full copyright and license information, please view the LICENSE
 | 
			
		||||
 * file that was distributed with this source code.
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://phpdoc.org
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace phpDocumentor\Reflection;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Interface for project factories. A project factory shall convert a set of files
 | 
			
		||||
 * into an object implementing the Project interface.
 | 
			
		||||
 */
 | 
			
		||||
interface ProjectFactory
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Creates a project from the set of files.
 | 
			
		||||
     *
 | 
			
		||||
     * @param File[] $files
 | 
			
		||||
     */
 | 
			
		||||
    public function create(string $name, array $files) : Project;
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user