function f1()

in testData/codeInsight/typeInference/PsalmArrayShape.php [39:56]


function f1($param){
    /** @var array<string, C> $ctxA */
    $ctxA = $param->f();
    <type value="C">$ctxA[0]</type>;
    <type value="C">$ctxA[1]</type>;

    /** @var array{string, C} $ctxB */
    $ctxB = $param->f();
    <type value="string|mixed">$ctxB[0]</type>;
    <type value="C|mixed">$ctxB[1]</type>;

    <type value="string|C|mixed">$ctxB[$f]</type>;

    /** @var array<array{a: C}> $ctxC */
    $ctxC = $param->f();
    <type value="C|mixed">$ctxC[$f]['a']</type>;
    <type value="mixed">$ctxC[$f]['b']</type>;
}