Atomic
Table of Contents
Interfaces
- DependentType
- TCallableInterface
Classes
- Scalar
- TAnonymousClassInstance
- Denotes an anonymous class (i.e. `new class{}`) with potential methods
- TArray
- Denotes a simple array of the form `array<TKey, TValue>`. It expects an array with two elements, both union types.
- TArrayKey
- Denotes the `array-key` type, used for something that could be the offset of an `array`.
- TBool
- Denotes the `bool` type where the exact value is unknown.
- TCallable
- Denotes the `callable` type. Can result from an `is_callable` check.
- TCallableKeyedArray
- Denotes an object-like array that is _also_ `callable`.
- TCallableObject
- Denotes an object that is also `callable` (i.e. it has `__invoke` defined).
- TCallableString
- Denotes the `callable-string` type, used to represent an unknown string that is also `callable`.
- TClassConstant
- Denotes a class constant whose value might not yet be known.
- TClassString
- Denotes the `class-string` type, used to describe a string representing a valid PHP class.
- TClassStringMap
- Represents an array where the type of each value
is a function of its string key value
- TClosedResource
- Denotes the `resource` type that has been closed (e.g. a file handle through `fclose()`).
- TClosure
- Represents a closure where we know the return type and params
- TConditional
- Internal representation of a conditional return type in phpdoc. For example ($param1 is int ? int : string)
- TDependentGetClass
- Represents a string whose value is a fully-qualified class found by get_class($var)
- TDependentGetDebugType
- Represents a string whose value is that of a type found by get_debug_type($var)
- TDependentGetType
- Represents a string whose value is that of a type found by gettype($var)
- TEmptyMixed
- Denotes the `mixed` type, but empty.
- TEmptyNumeric
- Denotes the `numeric` type that's also empty (which can also result from an `is_numeric` and `empty` check).
- TEmptyScalar
- Denotes a `scalar` type that is also empty.
- TEnumCase
- Denotes an enum with a specific value
- TFalse
- Denotes the `false` value type
- TFloat
- Denotes the `float` type, where the exact value is unknown.
- TGenericObject
- Denotes an object type that has generic parameters e.g. `ArrayObject<string, Foo\Bar>`
- TInt
- Denotes the `int` type, where the exact value is unknown.
- TIntMask
- Represents the type that is the result of a bitmask combination of its parameters.
- TIntMaskOf
- Represents the type that is the result of a bitmask combination of its parameters.
- TIntRange
- Denotes an interval of integers between two bounds
- TIterable
- denotes the `iterable` type(which can also result from an `is_iterable` check).
- TKeyedArray
- Represents an 'object-like array' - an array with known keys.
- TKeyOf
- Represents an offset of an array.
- TLiteralClassString
- Denotes a specific class string, generated by expressions like `A::class`.
- TLiteralFloat
- Denotes a floating point value where the exact numeric value is known.
- TLiteralInt
- Denotes an integer value where the exact numeric value is known.
- TLiteralString
- Denotes a string whose value is known.
- TLowercaseString
- Denotes the `string` type, where the exact value is unknown.
- TMixed
- Denotes the `mixed` type, used when you don’t know the type of an expression.
- TNamedObject
- Denotes an object type where the type of the object is known e.g. `Exception`, `Throwable`, `Foo\Bar`
- TNever
- Denotes the `no-return`/`never-return` type for functions that never return, either throwing an exception or
terminating (like the builtin `exit()`).
- TNonEmptyArray
- Denotes array known to be non-empty of the form `non-empty-array<TKey, TValue>`.
- TNonEmptyLowercaseString
- Denotes a non-empty-string where every character is lowercased. (which can also result from a `strtolower` call).
- TNonEmptyMixed
- Denotes the `mixed` type, but not empty.
- TNonEmptyNonspecificLiteralString
- Denotes the `literal-string` type, where the exact value is unknown but
we know that the string is not from user input
- TNonEmptyScalar
- Denotes a `scalar` type that is also non-empty.
- TNonEmptyString
- Denotes a string, that is also non-empty (every string except '')
- TNonFalsyString
- Denotes a string, that is also non-falsy (every string except '' and '0')
- TNonspecificLiteralInt
- Denotes the `literal-int` type, where the exact value is unknown but
we know that the int is not from user input
- TNonspecificLiteralString
- Denotes the `literal-string` type, where the exact value is unknown but
we know that the string is not from user input
- TNull
- Denotes the `null` type
- TNumeric
- Denotes the `numeric` type (which can also result from an `is_numeric` check).
- TNumericString
- Denotes a string that's also a numeric value e.g. `"5"`. It can result from `is_string($s) && is_numeric($s)`.
- TObject
- Denotes the `object` type
- TObjectWithProperties
- Denotes an object with specified member variables e.g. `object{foo:int, bar:string}`.
- TPropertiesOf
- Type that resolves to a keyed-array with properties of a class as keys and
their appropriate types as values.
- TResource
- Denotes the `resource` type (e.g. a file handle).
- TScalar
- Denotes the `scalar` super type (which can also result from an `is_scalar` check).
- TSingleLetter
- Denotes a string that has a length of 1
- TString
- Denotes the `string` type, where the exact value is unknown.
- TTemplateIndexedAccess
- TTemplateKeyOf
- Represents the type used when using TKeyOf when the type of the array is a template
- TTemplateParam
- denotes a template parameter that has been previously specified in a `@template` tag.
- TTemplateParamClass
- Denotes a `class-string` corresponding to a template parameter previously specified in a `@template` tag.
- TTemplatePropertiesOf
- Represents the type used when using TPropertiesOf when the type of the array is a template
- TTemplateValueOf
- Represents the type used when using TValueOf when the type of the array or enum is a template
- TTraitString
- Denotes the `trait-string` type, used to describe a string representing a valid PHP trait.
- TTrue
- Denotes the `true` value type
- TTypeAlias
- TUnknownClassString
- Denotes the `class-string` type, used to describe a string representing a valid PHP class.
- TValueOf
- Represents a value of an array or enum.
- TVoid
- Denotes the `void` type, normally just used to annotate a function/method that returns nothing
Traits
- CallableTrait
- GenericTrait
- HasIntersectionTrait