Determine type? no. Get info tho with `i`
There is no direct way to get a variable type in Elixir. For instance type("")
is not something that exists although there are 15 Kernel methods for specific type determination such as:
iex > is_number(1)
true
iex > is_binary("") # Note that elixir checks for binary instead of string, a string is a binary.
true
iex > is_atom(:hey)
true
There is an i
function available only in iex that will print out useful information about a variable.
iex > i("")
Term
""
Data type
BitString
Byte size
0
Description
This is a string: a UTF-8 encoded binary. It's printed surrounded by
"double quotes" because all UTF-8 encoded codepoints in it are printable.
Raw representation
<<>>
Reference modules
String, :binary
It's implemented as a protocol check it out.
I discovered it here.
Tweet