首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以将变量保存在文件中,然后在Erlang中导入和使用它?

问是否可以将变量保存在文件中,然后在Erlang中导入和使用它?
EN

Stack Overflow用户
提问于 2016-08-10 22:43:14
回答 1查看 33关注 0票数 1

我有一个带有函数的模块,这些函数返回不同的proplist。模块函数如下所示:

代码语言:javascript
复制
get_schema(auth) ->
    [
        {<<"login">>, [{string, required}]},
        {<<"password">>, [{string, required}]},
        {<<"id">>, [{string, required}]}
    ];

get_schema(update_password) ->
    [
        {<<"oldpassword">>, [{string, required}]},
        {<<"newpassword">>, [{string, required}]},
        {<<"id">>, [{string, required}]}
    ].

然后,我从另一个模块导入此模块,并使用相应的函数获取proplist。

是否可以将这些proplist保存为变量,而不是函数,以便从导入此函数的其他模块访问?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-10 23:03:34

我建议让它保持现在的样子。

如果你真的想使用变量,那么只需将返回值赋给一个变量,并这样使用它:

代码语言:javascript
复制
AuthSchema = my_module:get_schema(auth),

这个函数在引用上是透明的,这意味着调用它和使用它的返回值会产生相同的结果。在Erlang中,对常量使用单独的模块和不带参数的函数(或使用模式匹配,如您的示例)是相当常见的做法。例如,看看translit函数here。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38876615

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档