Namespace PHPStan\Type

Classes
AcceptsResult

Result of a Type::accepts() check — whether one type accepts another.

ArrayType
BenevolentUnionType
BooleanType
CallableType
CircularTypeAliasErrorType
ClassStringType
ClosureType
ClosureTypeFactory
ConditionalType
ConditionalTypeForParameter
ConstantTypeHelper
ErrorType
FileTypeMapper
FloatType
GeneralizePrecision

Controls how aggressively Type::generalize() widens a type.

IntegerRangeType
IntegerType
IntersectionType
IsSuperTypeOfResult

Result of a Type::isSuperTypeOf() check — whether one type is a supertype of another.

IterableType
KeyOfType
MixedType
NativeTypePosition

Where a native PHP type declaration is written, and for which PHP version.

NeverType
NewObjectType
NonAcceptingNeverType
NullType
ObjectShapeType
ObjectType
ObjectWithoutClassType
OffsetAccessType
ResourceType
SimultaneousTypeTraverser
StaticType
StringType
ThisType
TypeCombinator
TypehintHelper
TypeTraverser
TypeUtils
UnionType
ValueOfType
VerbosityLevel

Controls the verbosity of type descriptions in error messages.

VoidType
Interfaces
CompoundType

Marker interface for types that require bidirectional type comparison.

ConstantScalarType

A type whose value is known at analysis time — a compile-time constant scalar.

DynamicFunctionReturnTypeExtension

This is the interface dynamic return type extensions implement for functions.

DynamicFunctionThrowTypeExtension

This is the interface dynamic throw type extensions implement for functions.

DynamicMethodReturnTypeExtension

This is the interface dynamic return type extensions implement for non-static methods.

DynamicMethodThrowTypeExtension

This is the interface dynamic throw type extensions implement for non-static methods.

DynamicStaticMethodReturnTypeExtension

This is the interface dynamic return type extensions implement for static methods.

DynamicStaticMethodThrowTypeExtension

This is the interface dynamic throw type extensions implement for static methods.

ExpressionTypeResolverExtension

To register it in the configuration file use the phpstan.broker.expressionTypeResolverExtension service tag:

FunctionParameterClosureThisExtension

This is the interface for dynamically specifying the $this context for closure parameters in function calls.

FunctionParameterClosureTypeExtension

This is the interface for parameter closure type extensions for functions.

FunctionParameterOutTypeExtension

This is the interface dynamic parameter out type extensions implement for functions.

FunctionTypeSpecifyingExtension

This is the interface type-specifying extensions implement for functions.

LateResolvableType
MethodParameterClosureThisExtension

This is the interface for dynamically specifying the $this context for closure parameters in method calls.

MethodParameterClosureTypeExtension

This is the interface for parameter closure type extensions for methods.

MethodParameterOutTypeExtension

This is the interface dynamic parameter out type extensions implement for non-static methods.

MethodTypeSpecifyingExtension

This is the interface type-specifying extensions implement for non-static methods.

OperatorTypeSpecifyingExtension

This is the extension interface to implement if you want to describe how arithmetic operators like +, -, *, ^, / should infer types for PHP extensions that overload the behaviour, like GMP.

StaticMethodParameterClosureThisExtension

This is the interface for dynamically specifying the $this context for closure parameters in static method calls.

StaticMethodParameterClosureTypeExtension

This is the interface for parameter closure type extensions for static methods.

StaticMethodParameterOutTypeExtension

This is the interface dynamic parameter out type extensions implement for static methods.

StaticMethodTypeSpecifyingExtension

This is the interface type-specifying extensions implement for static methods.

Type

Represents a PHPStan type in the type system.

TypeTraverserCallable
TypeWithClassName

A Type that represents an object with a known class name.

UnaryOperatorTypeSpecifyingExtension

This is the extension interface to implement if you want to describe how unary operators like -, +, ~ should infer types for PHP extensions that overload the behaviour, like GMP.

Namespaces
PHPStan\Type\Accessory
PHPStan\Type\Constant
PHPStan\Type\Enum
PHPStan\Type\Generic
PHPStan\Type\Helper
PHPStan\Type\Php
PHPStan\Type\Traits