在Elixir中的函数规范中指定类型
如果可以是任何可以转换为字符串的类型,如何在函数规范中指定类型在Elixir中的函数规范中指定类型,elixir,specifications,Elixir,Specifications,如果可以是任何可以转换为字符串的类型,如何在函数规范中指定类型 @spec push(queue :: %MyQueue{}, data :: ??) :: {} 如果所说的“可以转换为字符串”,您是指to_string/1函数,该函数适用于实施了string.Chars协议的任何类型,您可以使用类型string.Chars.t: @spec push(queue :: %MyQueue{}, data :: String.Chars.t) :: {} IO模块中的许多函数在其规范中使用此类
@spec push(queue :: %MyQueue{}, data :: ??) :: {}
如果所说的“可以转换为字符串”,您是指to_string/1
函数,该函数适用于实施了string.Chars
协议的任何类型,您可以使用类型string.Chars.t
:
@spec push(queue :: %MyQueue{}, data :: String.Chars.t) :: {}
IO
模块中的许多函数在其规范中使用此类型,例如