Type
final class Type
PHP type reflection.
Methods
Creates a Type object based on reflection. Resolves self, static and parent to the actual class name.
Creates the Type object according to the text notation.
Resolves 'self', 'static' and 'parent' to the actual class name.
No description
Returns the array of subtypes that make up the compound type as strings.
Returns the array of subtypes that make up the compound type as Type objects:
Returns the type name for single types, otherwise null.
Returns true whether it is a union type.
Returns true whether it is an intersection type.
Returns true whether it is a single type. Simple nullable types are also considered to be single types.
Returns true whether the type is both a single and a PHP built-in type.
Returns true whether the type is both a single and a class name.
Determines if type is special class name self/parent/static.
Verifies type compatibility. For example, it checks if a value of a certain type could be passed as a parameter.
Details
at line 35
static Type|null
fromReflection(ReflectionFunctionAbstract|ReflectionParameter|ReflectionProperty $reflection)
Creates a Type object based on reflection. Resolves self, static and parent to the actual class name.
If the subject has no type, it returns null.
at line 72
static Type
fromString(string $type)
Creates the Type object according to the text notation.
at line 96
static string
resolve(string $type, ReflectionFunctionAbstract|ReflectionParameter|ReflectionProperty $reflection)
Resolves 'self', 'static' and 'parent' to the actual class name.
at line 123
string
__toString()
No description
at line 135
array
getNames()
Returns the array of subtypes that make up the compound type as strings.
at line 145
array
getTypes()
Returns the array of subtypes that make up the compound type as Type objects:
at line 154
string|null
getSingleName()
Returns the type name for single types, otherwise null.
at line 165
bool
isUnion()
Returns true whether it is a union type.
at line 174
bool
isIntersection()
Returns true whether it is an intersection type.
at line 183
bool
isSingle()
Returns true whether it is a single type. Simple nullable types are also considered to be single types.
at line 192
bool
isBuiltin()
Returns true whether the type is both a single and a PHP built-in type.
at line 201
bool
isClass()
Returns true whether the type is both a single and a class name.
at line 210
bool
isClassKeyword()
Determines if type is special class name self/parent/static.
at line 219
bool
allows(string $type)
Verifies type compatibility. For example, it checks if a value of a certain type could be passed as a parameter.