Current section
Files
Jump to
Current section
Files
src/ktn_type.erl
-module(ktn_type).
-export([
get/1
]).
-type type() :: integer
| float
| list
| tuple
| binary
| bitstring
| boolean
| function
| pid
| port
| reference
| atom
| unknown
.
-spec get(term()) -> type().
get(X) when is_integer(X) -> integer;
get(X) when is_float(X) -> float;
get(X) when is_list(X) -> list;
get(X) when is_tuple(X) -> tuple;
get(X) when is_binary(X) -> binary;
get(X) when is_bitstring(X) -> bitstring; % will fail before e12
get(X) when is_boolean(X) -> boolean;
get(X) when is_function(X) -> function;
get(X) when is_pid(X) -> pid;
get(X) when is_port(X) -> port;
get(X) when is_reference(X) -> reference;
get(X) when is_atom(X) -> atom;
get(_X) -> unknown.