1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-03 10:07:52 +01:00
psalm/src/Psalm/StatementsSource.php

65 lines
1.5 KiB
PHP

<?php
namespace Psalm;
use Psalm\Type\Union;
interface StatementsSource extends FileSource
{
public function getNamespace(): ?string;
/**
* @return array<lowercase-string, string>
*/
public function getAliasedClassesFlipped(): array;
/**
* @return array<string, string>
*/
public function getAliasedClassesFlippedReplaceable(): array;
public function getFQCLN(): ?string;
public function getClassName(): ?string;
public function getParentFQCLN(): ?string;
/**
* @return array<string, array<string, Union>>|null
*/
public function getTemplateTypeMap(): ?array;
public function setRootFilePath(string $file_path, string $file_name): void;
public function hasParentFilePath(string $file_path): bool;
public function hasAlreadyRequiredFilePath(string $file_path): bool;
public function getRequireNesting(): int;
public function isStatic(): bool;
public function getSource(): StatementsSource;
public function getCodebase(): Codebase;
/**
* Get a list of suppressed issues
*
* @return array<string>
*/
public function getSuppressedIssues(): array;
/**
* @param list<string> $new_issues
*/
public function addSuppressedIssues(array $new_issues): void;
/**
* @param list<string> $new_issues
*/
public function removeSuppressedIssues(array $new_issues): void;
public function getNodeTypeProvider(): NodeTypeProvider;
}