[Lookup]
服務的具體介面 程式設計師選擇的語言?此外,- 翻譯人員如何在我的程式中 使用嗎?
屆時我們會逐一回答。
查詢 API
Lookup API 程式庫可用來取得翻譯字串。簡化版檢視畫面 C++ 中的 Lookup API 程式碼,如下所示:
class Lookup {
public:
enum class Status {
// No error.
OK = 0,
// The resource was unavailable as requested.
UNAVAILABLE = 1,
};
static fpromise::result<std::unique_ptr<Lookup>, Lookup::Status>
New(const std::vector<std::string>& locale_ids);
fpromise::result<std::string_view, Lookup::Status> String(uint64_t message_id);
};
目前 Lookup API 僅適用於 C++ API。沒有概念 的問題再進一步支援其他語言。
實際的 API 會顯示在檔案中
lookup.h
,基本上是
與上述相同,但包含說明文件、建構
和測試負擔在本文撰寫期間,只能使用高階 C++ API
可供使用。我們日後會陸續新增其他語言的高階 API,例如
低階 C API 是
可做為寫入 FFI 的基礎
繫結至此
或其他語言的功能有一種特殊情況
rust 不需要 FFI 繫結,因為
低階實作作業屬於 Rust,可直接對話;但
尚未建立實際的 rust API
Lookup API 的基本用法如下所示:
std::vector<std::string> locale_ids = {"nl-NL"};
auto result = Lookup::New(locale_ids);
if (result.is_error()) {
return;
}
auto lookup = result.value();
auto lookup_result = lookup.string(42);
if (lookup_result.is_error()) {
// handle error
return;
}
std::string_view message = lookup_result.value();
// Use `message`.
這個範例來自 lookup.h
說明文件。瞭解 API 後
範例相當簡單明瞭,儲存一個項目:呼叫
lookup.string(...)
使用魔法 (42
) 查詢
一則訊息身為程式設計人員,您可以詢問這個數字的用途
下一節將說明這個問題。