精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

Rust Language Server可供率先采用者使用

責任編輯:editor004

作者:Sergio De Simone

2017-02-07 11:37:31

摘自:INFOQ

Rust Language Server(RLS)旨在更方便地設計具有諸如代碼自動補全、goto定義、重新格式化等功能的工具。為收集源代碼有關信息,Rust Language Server同時使用Rust編譯器和Racer,Racer是用于對Rust代碼進行代碼自動補全的工具。

Rust Language Server(RLS)旨在更方便地設計具有諸如代碼自動補全、goto定義、重新格式化等功能的工具。RLS項目的主要貢獻者之一Jonathan Turner 寫道,RLS alpha現在可供率先采用者嘗試用于真實項目并給出反饋。

為收集源代碼有關信息,Rust Language Server同時使用Rust編譯器和Racer,Racer是用于對Rust代碼進行代碼自動補全的工具。根據定義,編譯器是該程序最權威的信息源,但是由于目前缺乏對Rust的增量編譯的支持,可能速度會太慢。另一方面,雖然Racer在速度上有優勢,但是如Turner所說,Racer也有一些局限性,比如無法處理宏,或者說只能部分支持通用類型。因此,RLS同時查詢編譯器和Racer,以便于在預先設定的允許時間內提供最準確的信息。為使該過程盡可能高效,RLS并不通過shell進程來控制編譯器或Racer,而是與兩者相鏈接。

RLS的當前版本支持以下功能:

自動補全 goto定義 goto符號 查找所有參考 重命名/重構 懸停類型 how錯誤

RLS的一個關鍵特征是采用了微軟語言服務器協議(LSP)。LSP在客戶端(例如IDE或文本編輯器)和語言服務器之間建立標準通信協議。這使RLS可用于各種支持Microsoft LSP的IDE或編輯器,包括Visual Studio Code、Eclipse Che和emacs。尤其是RLS可以通過安裝插件用于Microsoft Visual Studio Code。插件一旦安裝,Visual Studio Code將自動啟動語言服務器,并支持Rust的高級編輯功能。

據Turner所說,雖然RLS目前仍處于早期階段,還不適用于實際使用,但它應該能夠應用于大多數基于Cargo的Rust項目。開發人員可以通過運行以下代碼來安裝:

git clone https://github.com/jonathandturner/rlsgit clone https://github.com/jonathandturner/rls_vscode.gitcd rls_vscodenpm installexport RLS_ROOT=/Source/rls

安裝完之后啟動VS Code。所需軟件有新版nightly rustc/cargo、git、python、node和cmake。

查看英文原文:Rust Language Server Available for Early Adopters

鏈接已復制,快去分享吧

企業網版權所有?2010-2024 京ICP備09108050號-6京公網安備 11010502049343號

  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 张家口市| 洛扎县| 嫩江县| 抚顺市| 万山特区| 资兴市| 卢氏县| 平和县| 宁城县| 息烽县| 永嘉县| 东港市| 绵竹市| 娄烦县| 曲阜市| 永善县| 高碑店市| 宁安市| 云和县| 金坛市| 仙居县| 双城市| 松原市| 广饶县| 天门市| 娄烦县| 黄平县| 祁阳县| 铁岭市| 同仁县| 阜南县| 舒城县| 巴楚县| 枣庄市| 水城县| 富平县| 达尔| 衢州市| 静安区| 司法| 陆良县|