Erlang logo
User's Guide
Reference Manual
Release Notes
PDF
Top

STDLIB
Reference Manual
Version 1.16.5


Expand All
Contract All

Table of Contents

erl_internal

MODULE

erl_internal

MODULE SUMMARY

Internal Erlang Definitions

DESCRIPTION

This module defines Erlang BIFs, guard tests and operators. This module is only of interest to programmers who manipulate Erlang code.

EXPORTS

bif(Name, Arity) -> bool()

Types:

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()

Types:

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()

Types:

Name = atom()
Arity = integer()

Returns true if Name/Arity is a valid Erlang type test, otherwise false.

arith_op(OpName, Arity) -> bool()

Types:

OpName = atom()
Arity = integer()

Returns true if OpName/Arity is an arithmetic operator, otherwise false.

bool_op(OpName, Arity) -> bool()

Types:

OpName = atom()
Arity = integer()

Returns true if OpName/Arity is a Boolean operator, otherwise false.

comp_op(OpName, Arity) -> bool()

Types:

OpName = atom()
Arity = integer()

Returns true if OpName/Arity is a comparison operator, otherwise false.

list_op(OpName, Arity) -> bool()

Types:

OpName = atom()
Arity = integer()

Returns true if OpName/Arity is a list operator, otherwise false.

send_op(OpName, Arity) -> bool()

Types:

OpName = atom()
Arity = integer()

Returns true if OpName/Arity is a send operator, otherwise false.

op_type(OpName, Arity) -> Type

Types:

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.