4
哪一個是對應的節儉類型:二郎原子和元組在節儉
- 一個Erlang元組(I可以想象這是一個結構)
- 一個Erlang原子(如果有的話?)
Erlang類型和Thrift IDL類型之間的直接映射是否有任何文檔可用?
哪一個是對應的節儉類型:二郎原子和元組在節儉
Erlang類型和Thrift IDL類型之間的直接映射是否有任何文檔可用?
好吧,我會盡量回答自己:)
顯然存在節儉二郎元組沒有直接的翻譯。你可以做的是在你的Erlang模塊中包含由Thrift生成的類型定義,並編寫你的Erlang代碼,以便它使用生成的Erlang記錄作爲函數的參數和/或返回值。
Erlang原子必須翻譯成Thrift二進制文件(或最終字符串)。
所以,如果你想有這樣的:
-spec cool_function() ->
{atom(), atom()}.
cool_function() ->
{foo, bar}
您需要在您的whatever.thrift文件來指定:
struct MyTuple {
1: binary first,
2: binary second
}
service myService {
MyTuple cool_function()
}
另外,你需要編寫Erlang功能如下:
[...]
-include("whatever_types.hrl").
[...]
-spec cool_function() ->
#myTuple{}.
cool_function() ->
#myTuple{
first = atom_to_binary(foo, utf8),
second = atom_to_binary(bar, utf8)
}.
請糾正我,如果我錯了。