hacklang

    1熱度

    2回答

    有什麼辦法自動加載哈克類型別名?我將它們放在PSR-4兼容路徑上的單獨文件中,儘管我知道它們是僅限於Hack的,並未在PSR-0或PSR-4中正式提及,但我認爲會發生以下情況之一: HHVM將擴展型別名爲其基本類型,或 spl_autoload會認爲類型爲一類,功能或接口名稱和執行腳本,解決別名。 但是,都沒有發生。在運行時,方法調用失敗的原因不兼容的類型的提示,即: Catchable fata

    1熱度

    1回答

    黑客Set有一個difference方法,但我沒有看到名爲intersect或任何類似的方法。 如何獲得兩個交集? $set1 = Set { 'a', 'x' }; $set2 = Set { 'b', 'c', 'x', 'y' }; $intersection = ??? // Set { 'x' } 文檔:https://docs.hhvm.com/hack/reference/c

    0熱度

    2回答

    我有這樣的功能: private static function myfun( string $param1, :xhp $param2, ): :xhp { return //somethinf } 我不想傳遞任何事情param2的。我怎樣才能做到這一點 ? 當我嘗試像這樣做: myfun("Hi",null), 它顯示我錯誤。

    2熱度

    1回答

    在與黑客的通用功能的限制試驗,我編造了以下內容: <?hh // strict class Base {} class Derived extends Base {} abstract class ImplBase { abstract const type T as Base; public function foo<Tf as this::T>(Tf $v): voi

    1熱度

    1回答

    docs非常輕。界面看起來幾乎與array相同。 我應該什麼時候更喜歡字典?

    1熱度

    1回答

    字符串我有一個Hacklang泛型類是這樣的: class SomeClass<T> { public function __construct(private T $input) { } public function __toString() : string { return (string)$this->input; } } 我

    0熱度

    1回答

    我有以下代碼作爲我知道將浮點數轉換爲字符串所需的最少有效位數(dtoa()與C中的模式4)的唯一方法。 $i = 14; do { $str = sprintf("%.{$i}e", $x); $i++; } while ($x != (float) $str); 的黑客,因爲它希望sprintf()的第一個參數是一個字符串,因此它可以檢查它反對的論點typecheck

    0熱度

    1回答

    我有一個嵌套的JSON文件,它由鍵和值組成,它們只是字符串。但是JSON文件的結構並不固定,所以有時它可以嵌套3層,有時只有2層。 我想知道我可以如何在嚴格模式下序列化? "live" : { "host" : "localhost", "somevalue" : "nothing", "anobject" : { "one" : "two", "three" : "fo

    0熱度

    1回答

    無論左側參數的方差,約束在下面的聲明放在Ta和Tb失敗類型檢測: class A<+TCov, -TCon, [±]Ta as TCov, [±]Tb super TCon> { public function __construct(private Ta $ta, private Tb $tb) {} // [various methods making use of Ta

    0熱度

    3回答

    有誰知道文件擴展名爲哈克?我看起來幾乎到處都是,似乎無法找到它。由於