很多时候我们编写的模块方法需要明确的参数类型,方便使用,-type 以及-spec 就提供了此能力
参考使用
- app.erl
-module(app).
 
-export([myadd/1,mydemo/1]).
 
-type add() :: {integer(), integer()}.
 
-spec myadd(add()) -> integer().
 
myadd(Args) ->
    {A,B} = Args,
    A + B.
 
-spec mydemo(add()) -> integer().
mydemo({A,B}) ->
    A + B.
- 使用

说明
此方法在不少erlang 项目中都可以看到,用好了很方便
参考资料
https://www.erlang.org/docs/26/reference_manual/typespec 
https://www.erlang.org/docs/26/reference_manual/data_types 
https://www.erlang.org/docs/26/reference_manual/typespec#specifications-for-functions










