This module defines Erlang BIFs, guard tests and operators. This module is only of interest to programmers who manipulate Erlang code.
Name = atom()
Arity = integer()
Returns true
if Name/Arity
is an Erlang BIF
which is automatically recognized by the compiler, otherwise
false
.
guard_bif(Name, Arity) -> bool()
Name = atom()
Arity = integer()
Returns true
if Name/Arity
is an Erlang BIF
which is allowed in guards, otherwise false
.
type_test(Name, Arity) -> bool()
Name = atom()
Arity = integer()
Returns true
if Name/Arity
is a valid Erlang
type test, otherwise false
.
arith_op(OpName, Arity) -> bool()
OpName = atom()
Arity = integer()
Returns true
if OpName/Arity
is an arithmetic
operator, otherwise false
.
bool_op(OpName, Arity) -> bool()
OpName = atom()
Arity = integer()
Returns true
if OpName/Arity
is a Boolean
operator, otherwise false
.
comp_op(OpName, Arity) -> bool()
OpName = atom()
Arity = integer()
Returns true
if OpName/Arity
is a comparison
operator, otherwise false
.
list_op(OpName, Arity) -> bool()
OpName = atom()
Arity = integer()
Returns true
if OpName/Arity
is a list
operator, otherwise false
.
send_op(OpName, Arity) -> bool()
OpName = atom()
Arity = integer()
Returns true
if OpName/Arity
is a send
operator, otherwise false
.
op_type(OpName, Arity) -> Type
OpName = atom()
Arity = integer()
Type = arith | bool | comp | list | send
Returns the Type
of operator that OpName/Arity
belongs to,
or generates a function_clause
error if it is not an
operator at all.