gpt4 book ai didi

erlang - 记录内元组字段的规范

转载 作者:行者123 更新时间:2023-12-02 02:13:33 25 4
gpt4 key购买 nike

请参阅下面我对记录定义的尝试。 Erlang 编译器不将 key 字段定义视为有效语法。

有没有一种方法可以完成类似的事情,而不需要将 key 设置为记录或只是像 key::tuple() 这样未定义的元组结构?

-record(spot, { 
key :: {id :: integer(), version:: integer(), live :: boolean()},
name :: binary(),
short_description :: binary(),
address1 :: binary(),
address2 :: binary(),
address3 :: binary(),
postalcode :: binary(),
city :: binary(),
phone :: binary(),
website_url :: binary(),
menu_url :: binary(),
last_modified_at :: erlang:timestamp()}).

最佳答案

{id::integer(), version::integer(), live::boolean()} 不是有效的类型规范。您可以使用记录定义,也可以仅指定类型信息,即 {integer(), integer(), boolean()}

所以使用记录看起来像。

-record(spot_key, {
id :: integer(),
version:: integer(),
live :: boolean()
}).

-record(spot, {
key :: #spot_key{},
name :: binary(),
short_description :: binary(),
address1 :: binary(),
address2 :: binary(),
address3 :: binary(),
postalcode :: binary(),
city :: binary(),
phone :: binary(),
website_url :: binary(),
menu_url :: binary(),
last_modified_at :: erlang:timestamp()
}).

关于erlang - 记录内元组字段的规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22115779/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com