You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
172 lines
3.3 KiB
172 lines
3.3 KiB
1 year ago
|
<?php
|
||
|
|
||
|
declare(strict_types=1);
|
||
|
|
||
|
/*
|
||
|
* This file is part of PHP CS Fixer.
|
||
|
*
|
||
|
* (c) Fabien Potencier <fabien@symfony.com>
|
||
|
* Dariusz Rumiński <dariusz.ruminski@gmail.com>
|
||
|
*
|
||
|
* This source file is subject to the MIT license that is bundled
|
||
|
* with this source code in the file LICENSE.
|
||
|
*/
|
||
|
|
||
|
namespace PhpCsFixer;
|
||
|
|
||
|
/**
|
||
|
* @author Davi Koscianski Vidal <davividal@gmail.com>
|
||
|
*
|
||
|
* @internal
|
||
|
*/
|
||
|
final class StdinFileInfo extends \SplFileInfo
|
||
|
{
|
||
|
public function __construct()
|
||
|
{
|
||
|
parent::__construct(__FILE__);
|
||
|
}
|
||
|
|
||
|
public function __toString(): string
|
||
|
{
|
||
|
return $this->getRealPath();
|
||
|
}
|
||
|
|
||
|
public function getRealPath(): string
|
||
|
{
|
||
|
// So file_get_contents & friends will work.
|
||
|
// Warning - this stream is not seekable, so `file_get_contents` will work only once! Consider using `FileReader`.
|
||
|
return 'php://stdin';
|
||
|
}
|
||
|
|
||
|
public function getATime(): int
|
||
|
{
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
public function getBasename($suffix = null): string
|
||
|
{
|
||
|
return $this->getFilename();
|
||
|
}
|
||
|
|
||
|
public function getCTime(): int
|
||
|
{
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
public function getExtension(): string
|
||
|
{
|
||
|
return '.php';
|
||
|
}
|
||
|
|
||
|
public function getFileInfo($className = null): \SplFileInfo
|
||
|
{
|
||
|
throw new \BadMethodCallException(sprintf('Method "%s" is not implemented.', __METHOD__));
|
||
|
}
|
||
|
|
||
|
public function getFilename(): string
|
||
|
{
|
||
|
/*
|
||
|
* Useful so fixers depending on PHP-only files still work.
|
||
|
*
|
||
|
* The idea to use STDIN is to parse PHP-only files, so we can
|
||
|
* assume that there will be always a PHP file out there.
|
||
|
*/
|
||
|
|
||
|
return 'stdin.php';
|
||
|
}
|
||
|
|
||
|
public function getGroup(): int
|
||
|
{
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
public function getInode(): int
|
||
|
{
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
public function getLinkTarget(): string
|
||
|
{
|
||
|
return '';
|
||
|
}
|
||
|
|
||
|
public function getMTime(): int
|
||
|
{
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
public function getOwner(): int
|
||
|
{
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
public function getPath(): string
|
||
|
{
|
||
|
return '';
|
||
|
}
|
||
|
|
||
|
public function getPathInfo($className = null): \SplFileInfo
|
||
|
{
|
||
|
throw new \BadMethodCallException(sprintf('Method "%s" is not implemented.', __METHOD__));
|
||
|
}
|
||
|
|
||
|
public function getPathname(): string
|
||
|
{
|
||
|
return $this->getFilename();
|
||
|
}
|
||
|
|
||
|
public function getPerms(): int
|
||
|
{
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
public function getSize(): int
|
||
|
{
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
public function getType(): string
|
||
|
{
|
||
|
return 'file';
|
||
|
}
|
||
|
|
||
|
public function isDir(): bool
|
||
|
{
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
public function isExecutable(): bool
|
||
|
{
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
public function isFile(): bool
|
||
|
{
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
public function isLink(): bool
|
||
|
{
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
public function isReadable(): bool
|
||
|
{
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
public function isWritable(): bool
|
||
|
{
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
public function openFile($openMode = 'r', $useIncludePath = false, $context = null): \SplFileObject
|
||
|
{
|
||
|
throw new \BadMethodCallException(sprintf('Method "%s" is not implemented.', __METHOD__));
|
||
|
}
|
||
|
|
||
|
public function setFileClass($className = null): void {}
|
||
|
|
||
|
public function setInfoClass($className = null): void {}
|
||
|
}
|