PHP Класс PHPStan\Analyser\Scope

Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
__construct ( Broker $broker, Standard $printer, string $file, boolean $declareStrictTypes = false, string $class = null, PHPStan\Reflection\ParametersAcceptor $function = null, string $namespace = null, array $variablesTypes = [], string $inClosureBindScopeClass = null, PHPStan\Type\Type $inAnonymousFunctionReturnType = null, ClassReflection $anonymousClass = null, PhpParser\Node\Expr $inFunctionCall = null, boolean $negated = false, array $moreSpecificTypes = [], array $currentlyAssignedVariables = [] )
__construct ( Broker $broker, Standard $printer, string $file, string $analysedContextFile = null, boolean $declareStrictTypes = false, string $class = null, PHPStan\Reflection\ParametersAcceptor $function = null, string $namespace = null, array $variablesTypes = [], string $inClosureBindScopeClass = null, PHPStan\Type\Type $inAnonymousFunctionReturnType = null, ClassReflection $anonymousClass = null, PhpParser\Node\Expr $inFunctionCall = null, boolean $negated = false, array $moreSpecificTypes = [], array $currentlyAssignedVariables = [] )
addVariables ( Scope $otherScope ) : self
assignVariable ( string $variableName, PHPStan\Type\Type $type = null ) : self
canAccessConstant ( PHPStan\Reflection\ClassConstantReflection $constantReflection ) : boolean
canAccessProperty ( PHPStan\Reflection\PropertyReflection $propertyReflection ) : boolean
canCallMethod ( PHPStan\Reflection\MethodReflection $methodReflection ) : boolean
changeAnalysedContextFile ( string $fileName ) : self
enterAnonymousClass ( ClassReflection $anonymousClass ) : self
enterAnonymousFunction ( array $parameters, array $uses, Name | string | null $returnTypehint = null ) : self
enterCatch ( array $classes, string $variableName ) : self
enterClass ( string $className ) : self
enterClassMethod ( ClassMethod $classMethod, array $phpDocParameterTypes, PHPStan\Type\Type $phpDocReturnType = null ) : self
enterClosureBind ( PHPStan\Type\Type $thisType = null, string $scopeClass ) : self
enterDeclareStrictTypes ( ) : self
enterForeach ( PhpParser\Node $iteratee, string $valueName, string $keyName = null ) : self
enterFunction ( PHPStan\Reflection\ParametersAcceptor $functionReflection ) : self
enterFunctionCall ( PhpParser\Node\Expr\FuncCall | PhpParser\Node\Expr\MethodCall $functionCall ) : self
enterFunctionCall ( PhpParser\Node\Expr\FuncCall | PhpParser\Node\Expr\MethodCall | PhpParser\Node\Expr\StaticCall $functionCall ) : self
enterNamespace ( string $namespaceName ) : self
enterNegation ( ) : self
enterVariableAssign ( string $variableName ) : self
getAnalysedContextFile ( ) : string
getAnonymousClass ( ) : ClassReflection
getAnonymousFunctionReturnType ( ) : PHPStan\Type\Type | null
getClass ( ) : null | string
getFile ( ) : string
getFunction ( ) : null | PHPStan\Reflection\ParametersAcceptor
getFunctionName ( ) : null | string
getInFunctionCall ( ) : PhpParser\Node\Expr\FuncCall | PhpParser\Node\Expr\MethodCall | null
getNamespace ( ) : null | string
getType ( PhpParser\Node $node ) : PHPStan\Type\Type
getVariableType ( string $variableName ) : PHPStan\Type\Type
getVariableTypes ( ) : array
hasVariableType ( string $variableName ) : boolean
intersectVariables ( Scope $otherScope ) : self
isDeclareStrictTypes ( ) : boolean
isInAnonymousClass ( ) : boolean
isInAnonymousFunction ( ) : boolean
isInVariableAssign ( string $variableName ) : boolean
isNegated ( ) : boolean
isSpecified ( PhpParser\Node $node ) : boolean
resolveName ( Name $name ) : string | null
specifyExpressionType ( PhpParser\Node $expr, PHPStan\Type\Type $type ) : self
specifyFetchedPropertyFromIsset ( PhpParser\Node\Expr\PropertyFetch $expr ) : self
unsetVariable ( string $variableName ) : self

Приватные методы

Метод Описание
addMoreSpecificTypes ( array $types ) : self
canAccessClassMember ( PHPStan\Reflection\ClassMemberReflection $classMemberReflection ) : boolean
getAnonymousFunctionType ( Name | string | null $type = null, boolean $isNullable ) : PHPStan\Type\Type
getCombinedType ( array $types ) : PHPStan\Type\Type
getFunctionType ( Name | string | null $type = null, boolean $isNullable, boolean $isVariadic ) : PHPStan\Type\Type
getTypeFromValue ( mixed $value ) : PHPStan\Type\Type | null
isParameterValueNullable ( Param $parameter ) : boolean

Описание методов

__construct() публичный Метод

public __construct ( Broker $broker, Standard $printer, string $file, boolean $declareStrictTypes = false, string $class = null, PHPStan\Reflection\ParametersAcceptor $function = null, string $namespace = null, array $variablesTypes = [], string $inClosureBindScopeClass = null, PHPStan\Type\Type $inAnonymousFunctionReturnType = null, ClassReflection $anonymousClass = null, PhpParser\Node\Expr $inFunctionCall = null, boolean $negated = false, array $moreSpecificTypes = [], array $currentlyAssignedVariables = [] )
$broker PHPStan\Broker\Broker
$printer PhpParser\PrettyPrinter\Standard
$file string
$declareStrictTypes boolean
$class string
$function PHPStan\Reflection\ParametersAcceptor
$namespace string
$variablesTypes array
$inClosureBindScopeClass string
$inAnonymousFunctionReturnType PHPStan\Type\Type
$anonymousClass PHPStan\Reflection\ClassReflection
$inFunctionCall PhpParser\Node\Expr
$negated boolean
$moreSpecificTypes array
$currentlyAssignedVariables array

__construct() публичный Метод

public __construct ( Broker $broker, Standard $printer, string $file, string $analysedContextFile = null, boolean $declareStrictTypes = false, string $class = null, PHPStan\Reflection\ParametersAcceptor $function = null, string $namespace = null, array $variablesTypes = [], string $inClosureBindScopeClass = null, PHPStan\Type\Type $inAnonymousFunctionReturnType = null, ClassReflection $anonymousClass = null, PhpParser\Node\Expr $inFunctionCall = null, boolean $negated = false, array $moreSpecificTypes = [], array $currentlyAssignedVariables = [] )
$broker PHPStan\Broker\Broker
$printer PhpParser\PrettyPrinter\Standard
$file string
$analysedContextFile string
$declareStrictTypes boolean
$class string
$function PHPStan\Reflection\ParametersAcceptor
$namespace string
$variablesTypes array
$inClosureBindScopeClass string
$inAnonymousFunctionReturnType PHPStan\Type\Type
$anonymousClass PHPStan\Reflection\ClassReflection
$inFunctionCall PhpParser\Node\Expr
$negated boolean
$moreSpecificTypes array
$currentlyAssignedVariables array

addVariables() публичный Метод

public addVariables ( Scope $otherScope ) : self
$otherScope Scope
Результат self

assignVariable() публичный Метод

public assignVariable ( string $variableName, PHPStan\Type\Type $type = null ) : self
$variableName string
$type PHPStan\Type\Type
Результат self

canAccessConstant() публичный Метод

public canAccessConstant ( PHPStan\Reflection\ClassConstantReflection $constantReflection ) : boolean
$constantReflection PHPStan\Reflection\ClassConstantReflection
Результат boolean

canAccessProperty() публичный Метод

public canAccessProperty ( PHPStan\Reflection\PropertyReflection $propertyReflection ) : boolean
$propertyReflection PHPStan\Reflection\PropertyReflection
Результат boolean

canCallMethod() публичный Метод

public canCallMethod ( PHPStan\Reflection\MethodReflection $methodReflection ) : boolean
$methodReflection PHPStan\Reflection\MethodReflection
Результат boolean

changeAnalysedContextFile() публичный Метод

public changeAnalysedContextFile ( string $fileName ) : self
$fileName string
Результат self

enterAnonymousClass() публичный Метод

public enterAnonymousClass ( ClassReflection $anonymousClass ) : self
$anonymousClass PHPStan\Reflection\ClassReflection
Результат self

enterAnonymousFunction() публичный Метод

public enterAnonymousFunction ( array $parameters, array $uses, Name | string | null $returnTypehint = null ) : self
$parameters array
$uses array
$returnTypehint PhpParser\Node\Name | string | null
Результат self

enterCatch() публичный Метод

public enterCatch ( array $classes, string $variableName ) : self
$classes array
$variableName string
Результат self

enterClass() публичный Метод

public enterClass ( string $className ) : self
$className string
Результат self

enterClassMethod() публичный Метод

public enterClassMethod ( ClassMethod $classMethod, array $phpDocParameterTypes, PHPStan\Type\Type $phpDocReturnType = null ) : self
$classMethod PhpParser\Node\Stmt\ClassMethod
$phpDocParameterTypes array
$phpDocReturnType PHPStan\Type\Type
Результат self

enterClosureBind() публичный Метод

public enterClosureBind ( PHPStan\Type\Type $thisType = null, string $scopeClass ) : self
$thisType PHPStan\Type\Type
$scopeClass string
Результат self

enterDeclareStrictTypes() публичный Метод

public enterDeclareStrictTypes ( ) : self
Результат self

enterForeach() публичный Метод

public enterForeach ( PhpParser\Node $iteratee, string $valueName, string $keyName = null ) : self
$iteratee PhpParser\Node
$valueName string
$keyName string
Результат self

enterFunction() публичный Метод

public enterFunction ( PHPStan\Reflection\ParametersAcceptor $functionReflection ) : self
$functionReflection PHPStan\Reflection\ParametersAcceptor
Результат self

enterFunctionCall() публичный Метод

public enterFunctionCall ( PhpParser\Node\Expr\FuncCall | PhpParser\Node\Expr\MethodCall $functionCall ) : self
$functionCall PhpParser\Node\Expr\FuncCall | PhpParser\Node\Expr\MethodCall
Результат self

enterFunctionCall() публичный Метод

public enterFunctionCall ( PhpParser\Node\Expr\FuncCall | PhpParser\Node\Expr\MethodCall | PhpParser\Node\Expr\StaticCall $functionCall ) : self
$functionCall PhpParser\Node\Expr\FuncCall | PhpParser\Node\Expr\MethodCall | PhpParser\Node\Expr\StaticCall
Результат self

enterNamespace() публичный Метод

public enterNamespace ( string $namespaceName ) : self
$namespaceName string
Результат self

enterNegation() публичный Метод

public enterNegation ( ) : self
Результат self

enterVariableAssign() публичный Метод

public enterVariableAssign ( string $variableName ) : self
$variableName string
Результат self

getAnalysedContextFile() публичный Метод

public getAnalysedContextFile ( ) : string
Результат string

getAnonymousClass() публичный Метод

public getAnonymousClass ( ) : ClassReflection
Результат PHPStan\Reflection\ClassReflection

getAnonymousFunctionReturnType() публичный Метод

public getAnonymousFunctionReturnType ( ) : PHPStan\Type\Type | null
Результат PHPStan\Type\Type | null

getClass() публичный Метод

public getClass ( ) : null | string
Результат null | string

getFile() публичный Метод

public getFile ( ) : string
Результат string

getFunction() публичный Метод

public getFunction ( ) : null | PHPStan\Reflection\ParametersAcceptor
Результат null | PHPStan\Reflection\ParametersAcceptor

getFunctionName() публичный Метод

public getFunctionName ( ) : null | string
Результат null | string

getInFunctionCall() публичный Метод

public getInFunctionCall ( ) : PhpParser\Node\Expr\FuncCall | PhpParser\Node\Expr\MethodCall | null
Результат PhpParser\Node\Expr\FuncCall | PhpParser\Node\Expr\MethodCall | null

getNamespace() публичный Метод

public getNamespace ( ) : null | string
Результат null | string

getType() публичный Метод

public getType ( PhpParser\Node $node ) : PHPStan\Type\Type
$node PhpParser\Node
Результат PHPStan\Type\Type

getVariableType() публичный Метод

public getVariableType ( string $variableName ) : PHPStan\Type\Type
$variableName string
Результат PHPStan\Type\Type

getVariableTypes() публичный Метод

public getVariableTypes ( ) : array
Результат array

hasVariableType() публичный Метод

public hasVariableType ( string $variableName ) : boolean
$variableName string
Результат boolean

intersectVariables() публичный Метод

public intersectVariables ( Scope $otherScope ) : self
$otherScope Scope
Результат self

isDeclareStrictTypes() публичный Метод

public isDeclareStrictTypes ( ) : boolean
Результат boolean

isInAnonymousClass() публичный Метод

public isInAnonymousClass ( ) : boolean
Результат boolean

isInAnonymousFunction() публичный Метод

public isInAnonymousFunction ( ) : boolean
Результат boolean

isInVariableAssign() публичный Метод

public isInVariableAssign ( string $variableName ) : boolean
$variableName string
Результат boolean

isNegated() публичный Метод

public isNegated ( ) : boolean
Результат boolean

isSpecified() публичный Метод

public isSpecified ( PhpParser\Node $node ) : boolean
$node PhpParser\Node
Результат boolean

resolveName() публичный Метод

public resolveName ( Name $name ) : string | null
$name PhpParser\Node\Name
Результат string | null

specifyExpressionType() публичный Метод

public specifyExpressionType ( PhpParser\Node $expr, PHPStan\Type\Type $type ) : self
$expr PhpParser\Node
$type PHPStan\Type\Type
Результат self

specifyFetchedPropertyFromIsset() публичный Метод

public specifyFetchedPropertyFromIsset ( PhpParser\Node\Expr\PropertyFetch $expr ) : self
$expr PhpParser\Node\Expr\PropertyFetch
Результат self

unsetVariable() публичный Метод

public unsetVariable ( string $variableName ) : self
$variableName string
Результат self