Hh_server

2018-09-29 15:09 更新

hack服務(wù)器在幕后工作,以保持你的代碼在不斷同步的hh_clienttypechecker。但是,服務(wù)器hh_server也可以用于某些主要的獨(dú)立功能。

如果您想查看所有可用的選項(xiàng)hh_server,請(qǐng)參閱幫助hh_server --help。

檢查并退出

如果要在不連續(xù)運(yùn)行的常規(guī)服務(wù)器的開銷的情況下鍵入文件或文件目錄hh_client,則可以進(jìn)行快速和臟的檢查hh_server。

hh_server --check <path> 

與運(yùn)行一樣hh_client,您必須確保路徑的根目錄有一個(gè)空.hhconfig文件。

指定一個(gè)點(diǎn).來(lái)表示檢查當(dāng)前路徑。

自動(dòng)類型注釋

hh_server 提供了一種模式,您可以使用Hack文件或Hack文件的項(xiàng)目,并自動(dòng)向這些文件添加類型注釋。

注意:這僅適用于<?hh文件。

hh_server --convert <path to files to convert> <path to top level of project>

很多時(shí)候兩條路是一樣的。但是,這樣做只會(huì)使您只能轉(zhuǎn)換一個(gè)項(xiàng)目的子集。通常,通往項(xiàng)目頂層的路徑有.hhconfig。

此過(guò)程通過(guò)軟鍵類型提示進(jìn)行注釋@。這是因?yàn)樽⑨屵h(yuǎn)不完美,我們寧愿在運(yùn)行時(shí)拋出警告而不是致命的。

例如,以下未注釋的Hack文件:

<?hh

function foo($x) {
  if ($x + 3 < 10) {
    return false;
  }
  return true;
}

function bar($y) {
  if ($y) {
    return "Hi";
  }
  return null;
}

可能會(huì)轉(zhuǎn)換為:

<?hh

function foo($x): @bool {
  if ($x + 3 < 10) {
    return false;
  }
  return true;
}

function bar($y): @?string {
  if ($y) {
    return "Hi";
  }
  return null;
}
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)