1
0
mirror of https://github.com/danog/psalm.git synced 2025-01-21 21:31:13 +01:00

Rename TKeyOfArray to TKeyOf.

This commit is contained in:
AndrolGenhald 2022-07-18 14:44:29 -05:00
parent 6505d8e6d5
commit 66ebf4a55c
9 changed files with 26 additions and 26 deletions

View File

@ -42,7 +42,7 @@
- `Psalm\Type\Atomic\TIntRange`
- `Psalm\Type\Atomic\TIterable`
- `Psalm\Type\Atomic\TKeyedArray`
- `Psalm\Type\Atomic\TKeyOfArray`
- `Psalm\Type\Atomic\TKeyOf`
- `Psalm\Type\Atomic\TList`
- `Psalm\Type\Atomic\TLiteralClassString`
- `Psalm\Type\Atomic\TLowercaseString`
@ -92,7 +92,7 @@
- `Psalm\Type\Atomic\TInt`
- `Psalm\Type\Atomic\TIterable`
- `Psalm\Type\Atomic\TKeyedArray`
- `Psalm\Type\Atomic\TKeyOfArray`
- `Psalm\Type\Atomic\TKeyOf`
- `Psalm\Type\Atomic\TList`
- `Psalm\Type\Atomic\TLiteralClassString`
- `Psalm\Type\Atomic\TMixed`
@ -155,7 +155,7 @@
- [BC] Atomic::getId() has now a first param $exact. Calling the method with false will return a less detailed version of the type in some cases (similarly to what `__toString` used to return)
- [BC] To remove a variable from the context, use `Context::remove()`. Calling
`unset($context->vars_in_scope[$var_id])` can cause problems when using references.
- [BC] `TKeyOfClassConstant` has been renamed to `TKeyOfArray`.
- [BC] `TKeyOfClassConstant` has been renamed to `TKeyOf`.
- [BC] `TValueOfClassConstant` has been renamed to `TValueOf`.
- [BC] `TKeyOfTemplate` base class has been changed from `Scalar` to `Atomic`.
- [BC] Class `Psalm\FileManipulation` became final
@ -748,7 +748,7 @@
- [BC] Class `Psalm\Type\Atomic\TEnumCase` became final
- [BC] Class `Psalm\Type\Atomic\TCallableKeyedArray` became final
- [BC] Class `Psalm\Type\Atomic\TDependentGetDebugType` became final
- [BC] Class `Psalm\Type\Atomic\TKeyOfArray` became final
- [BC] Class `Psalm\Type\Atomic\TKeyOf` became final
- [BC] Class `Psalm\Type\Atomic\TNonspecificLiteralInt` became final
- [BC] Class `Psalm\Type\Atomic\TObjectWithProperties` became final
- [BC] Class `Psalm\Type\Atomic\TTemplateValueOf` became final

View File

@ -49,13 +49,13 @@ The classes are as follows:
`TIntMaskOf` - as above, but used with a reference to constants in code `int-mask-of<MyClass::CLASS_CONSTANT_*>` will corresponds to `1|2|3|4|5|6|7` if there are three constant 1, 2 and 4
`TKeyOfArray` - Represents an offset of an array (e.g. `key-of<MyClass::CLASS_CONSTANT>`).
`TKeyOf` - Represents an offset of an array (e.g. `key-of<MyClass::CLASS_CONSTANT>`).
`TValueOf` - Represents a value of an array or enum (e.g. `value-of<MyClass::CLASS_CONSTANT>`).
`TTemplateIndexedAccess` - To be documented
`TTemplateKeyOf` - Represents the type used when using TKeyOfArray when the type of the array is a template
`TTemplateKeyOf` - Represents the type used when using TKeyOf 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

View File

@ -19,7 +19,7 @@ use Psalm\Type\Atomic\TEmptyMixed;
use Psalm\Type\Atomic\TEnumCase;
use Psalm\Type\Atomic\TGenericObject;
use Psalm\Type\Atomic\TIterable;
use Psalm\Type\Atomic\TKeyOfArray;
use Psalm\Type\Atomic\TKeyOf;
use Psalm\Type\Atomic\TKeyedArray;
use Psalm\Type\Atomic\TList;
use Psalm\Type\Atomic\TLiteralString;
@ -341,7 +341,7 @@ class AtomicTypeComparator
}
if ($input_type_part instanceof TTemplateKeyOf) {
$array_key_type = TKeyOfArray::getArrayKeyType($input_type_part->as);
$array_key_type = TKeyOf::getArrayKeyType($input_type_part->as);
if ($array_key_type === null) {
return false;
}

View File

@ -11,7 +11,7 @@ use Psalm\Type\Atomic\TClassString;
use Psalm\Type\Atomic\TConditional;
use Psalm\Type\Atomic\TInt;
use Psalm\Type\Atomic\TIterable;
use Psalm\Type\Atomic\TKeyOfArray;
use Psalm\Type\Atomic\TKeyOf;
use Psalm\Type\Atomic\TKeyedArray;
use Psalm\Type\Atomic\TLiteralInt;
use Psalm\Type\Atomic\TLiteralString;
@ -345,9 +345,9 @@ class TemplateInferredTypeReplacer
);
if ($atomic_type instanceof TTemplateKeyOf
&& TKeyOfArray::isViableTemplateType($template_type)
&& TKeyOf::isViableTemplateType($template_type)
) {
return new TKeyOfArray(clone $template_type);
return new TKeyOf(clone $template_type);
}
if ($atomic_type instanceof TTemplateValueOf

View File

@ -22,7 +22,7 @@ use Psalm\Type\Atomic\TInt;
use Psalm\Type\Atomic\TIntMask;
use Psalm\Type\Atomic\TIntMaskOf;
use Psalm\Type\Atomic\TIterable;
use Psalm\Type\Atomic\TKeyOfArray;
use Psalm\Type\Atomic\TKeyOf;
use Psalm\Type\Atomic\TKeyedArray;
use Psalm\Type\Atomic\TList;
use Psalm\Type\Atomic\TLiteralClassString;
@ -363,7 +363,7 @@ class TypeExpander
return [$return_type];
}
if ($return_type instanceof TKeyOfArray
if ($return_type instanceof TKeyOf
|| $return_type instanceof TValueOf
) {
return self::expandKeyOfValueOf(
@ -965,7 +965,7 @@ class TypeExpander
}
/**
* @param TKeyOfArray|TValueOf $return_type
* @param TKeyOf|TValueOf $return_type
* @param string|TNamedObject|TTemplateParam|null $static_class_type
* @return non-empty-list<Atomic>
*/
@ -1025,8 +1025,8 @@ class TypeExpander
if (!$constant_type
|| (
$return_type instanceof TKeyOfArray
&& !TKeyOfArray::isViableTemplateType($constant_type)
$return_type instanceof TKeyOf
&& !TKeyOf::isViableTemplateType($constant_type)
)
|| (
$return_type instanceof TValueOf
@ -1049,8 +1049,8 @@ class TypeExpander
return [$return_type];
}
if ($return_type instanceof TKeyOfArray) {
$new_return_types = TKeyOfArray::getArrayKeyType(new Union($type_atomics));
if ($return_type instanceof TKeyOf) {
$new_return_types = TKeyOf::getArrayKeyType(new Union($type_atomics));
} else {
$new_return_types = TValueOf::getValueType(new Union($type_atomics), $codebase);
}

View File

@ -41,7 +41,7 @@ use Psalm\Type\Atomic\TIntMask;
use Psalm\Type\Atomic\TIntMaskOf;
use Psalm\Type\Atomic\TIntRange;
use Psalm\Type\Atomic\TIterable;
use Psalm\Type\Atomic\TKeyOfArray;
use Psalm\Type\Atomic\TKeyOf;
use Psalm\Type\Atomic\TKeyedArray;
use Psalm\Type\Atomic\TList;
use Psalm\Type\Atomic\TLiteralClassString;
@ -743,13 +743,13 @@ class TypeParser
);
}
if (!TKeyOfArray::isViableTemplateType($generic_params[0])) {
if (!TKeyOf::isViableTemplateType($generic_params[0])) {
throw new TypeParseTreeException(
'Untemplated key-of param ' . $param_name . ' should be an array'
);
}
return new TKeyOfArray($generic_params[0]);
return new TKeyOf($generic_params[0]);
}
if ($generic_type_value === 'value-of') {
@ -843,7 +843,7 @@ class TypeParser
if (!$param_type instanceof TClassConstant
&& !$param_type instanceof TValueOf
&& !$param_type instanceof TKeyOfArray
&& !$param_type instanceof TKeyOf
) {
throw new TypeParseTreeException(
'Invalid reference passed to int-mask-of'

View File

@ -11,11 +11,11 @@ use Psalm\Type\Atomic;
*/
final class TIntMaskOf extends TInt
{
/** @var TClassConstant|TKeyOfArray|TValueOf */
/** @var TClassConstant|TKeyOf|TValueOf */
public $value;
/**
* @param TClassConstant|TKeyOfArray|TValueOf $value
* @param TClassConstant|TKeyOf|TValueOf $value
*/
public function __construct(Atomic $value)
{

View File

@ -11,7 +11,7 @@ use function array_values;
/**
* Represents an offset of an array.
*/
final class TKeyOfArray extends TArrayKey
final class TKeyOf extends TArrayKey
{
/** @var Union */
public $type;

View File

@ -9,7 +9,7 @@ use Psalm\Type\Atomic;
use Psalm\Type\Union;
/**
* Represents the type used when using TKeyOfArray when the type of the array is a template
* Represents the type used when using TKeyOf when the type of the array is a template
*/
final class TTemplateKeyOf extends Atomic
{