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 simple 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 simple type. Single nullable types are also considered to be simple types.
No description
Returns true whether the type is both a simple and a PHP built-in type.
Returns true whether the type is both a simple 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 32
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 67
static Type
fromString(string $type)
Creates the Type object according to the text notation.
at line 92
static string
resolve(string $type, ReflectionFunctionAbstract|ReflectionParameter|ReflectionProperty $of)
Resolves 'self', 'static' and 'parent' to the actual class name.
at line 126
string
__toString()
No description
at line 145
array
getNames()
Returns the array of subtypes that make up the compound type as strings.
at line 155
array
getTypes()
Returns the array of subtypes that make up the compound type as Type objects:
at line 164
string|null
getSingleName()
Returns the type name for simple types, otherwise null.
at line 175
bool
isUnion()
Returns true whether it is a union type.
at line 184
bool
isIntersection()
Returns true whether it is an intersection type.
at line 193
bool
isSimple()
Returns true whether it is a simple type. Single nullable types are also considered to be simple types.
at line 199
bool
isSingle()
No description
at line 209
bool
isBuiltin()
Returns true whether the type is both a simple and a PHP built-in type.
at line 218
bool
isClass()
Returns true whether the type is both a simple and a class name.
at line 227
bool
isClassKeyword()
Determines if type is special class name self/parent/static.
at line 236
bool
allows(string $subtype)
Verifies type compatibility. For example, it checks if a value of a certain type could be passed as a parameter.