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 29
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 65
static Type
fromString(string $type)
Creates the Type object according to the text notation.
at line 88
static string
resolve(string $type, ReflectionFunctionAbstract|ReflectionParameter|ReflectionProperty $reflection)
Resolves 'self', 'static' and 'parent' to the actual class name.
at line 117
string
__toString()
No description
at line 129
array
getNames()
Returns the array of subtypes that make up the compound type as strings.
at line 139
array
getTypes()
Returns the array of subtypes that make up the compound type as Type objects:
at line 148
string|null
getSingleName()
Returns the type name for single types, otherwise null.
at line 159
bool
isUnion()
Returns true whether it is a union type.
at line 168
bool
isIntersection()
Returns true whether it is an intersection type.
at line 177
bool
isSingle()
Returns true whether it is a single type. Simple nullable types are also considered to be single types.
at line 186
bool
isBuiltin()
Returns true whether the type is both a single and a PHP built-in type.
at line 195
bool
isClass()
Returns true whether the type is both a single and a class name.
at line 204
bool
isClassKeyword()
Determines if type is special class name self/parent/static.
at line 213
bool
allows(string $type)
Verifies type compatibility. For example, it checks if a value of a certain type could be passed as a parameter.