在erlang编程中,-spec,-type,-不透明意味着什么

在erlang编程中,-spec,-type,-不透明意味着什么,erlang,Erlang,我发现-define是宏,-record类似于C的结构,-include用于标题。但是-spec,-type或-不透明意味着什么呢?我试图在互联网上搜索,在文档中搜索,但没有找到答案

我发现-define是宏,-record类似于C的结构,-include用于标题。但是-spec,-type或-不透明意味着什么呢?我试图在互联网上搜索,在文档中搜索,但没有找到答案