当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Elixir Kernel.inspect用法及代码示例


Elixir语言中 Kernel.inspect 相关用法介绍如下。

用法:

inspect(term, opts \\ [])
@spec inspect(
  Inspect.t(),
  keyword()
) :: String.t()

根据 Inspect 协议检查给定的参数。第二个参数是一个关键字列表,其中包含控制检查的选项。

选项

inspect/2 接受在内部转换为 Inspect.Opts 结构的选项列表。查看 Inspect.Opts 的文档以查看支持的选项。

例子

iex> inspect(:foo)
":foo"

iex> inspect([1, 2, 3, 4, 5], limit: 3)
"[1, 2, 3, ...]"

iex> inspect([1, 2, 3], pretty: true, width: 0)
"[1,\n 2,\n 3]"

iex> inspect("olá" <> <<0>>)
"<<111, 108, 195, 161, 0>>"

iex> inspect("olá" <> <<0>>, binaries: :as_strings)
"\"olá\\0\""

iex> inspect("olá", binaries: :as_binaries)
"<<111, 108, 195, 161>>"

iex> inspect('bar')
"'bar'"

iex> inspect([0 | 'bar'])
"[0, 98, 97, 114]"

iex> inspect(100, base: :octal)
"0o144"

iex> inspect(100, base: :hex)
"0x64"

请注意, Inspect 协议不一定返回 Elixir 术语的有效表示。在这种情况下,检查结果必须以 # 开头。例如,检查一个函数将返回:

inspect(fn a, b -> a + b end)
#=> #Function<...>

Inspect 协议可以派生以隐藏结构中的某些字段,因此它们不会出现在日志、检查和类似内容中。有关详细信息,请参阅 Inspect 协议文档的"Deriving" 部分。

相关用法


注:本文由纯净天空筛选整理自elixir-lang.org大神的英文原创作品 Kernel.inspect(term, opts \\ [])。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。