gpt4 book ai didi

hacklang - 如何修复此 HH FIXME [4410]?

转载 作者:行者123 更新时间:2023-12-04 08:44:48 27 4
gpt4 key购买 nike

试图解决 HH 提示......基本上代码正在做类似的事情

Sfirstgroup = idx($largegroup, "first");

$final_thing = null

if(HH\is_any_array(Sfirstgroup) && Sfirstgroup){

/*HH_FIXME[4110] Error revealed by is_arry refining to varray_or_darray */

$final_thing = idx(Sfirstgroup[0],"final_thing")

}
我认为它必须与 firstgroup[0] 没有集合类型有关。但无法弄清楚如何解决这个问题......
非常感谢!

最佳答案

您有两种类型错误:

  • 使用方括号语法索引 $firstgroup[0]不适用于来自 is_any_array 的推断类型,它推断键类型的通配符泛型(即它是 KeyedContainer<_,_> )。要么改$a[0]idx($a, 0)或使用 is_vec_or_varray如果你所有的 key 都是 int ,因为它细化为 vec<_> .
  • 您需要证明$firstgroup[0]KeyedContainer使用您的第二个 idx调用 $final_thing .细化检查如 is_any_array不适用于索引变量(如 $firstgroup[0] ),因此您必须创建一个临时变量来优化它。

  • 总而言之,这是一种可能的解决方案:
    $firstgroup = idx($largegroup, "first");

    $final_thing = null;

    if(HH\is_vec_or_varray($firstgroup)){
    $first_item = $firstgroup[0];
    if(HH\is_any_array($first_item)) {
    $final_thing = idx($first_item,"final_thing");
    }
    }

    关于hacklang - 如何修复此 HH FIXME [4410]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64381155/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com