category

# `os_types`

A set of operating-system related types.

Author: Paulo Moura
Version: 1:4:0
Date: 2021-02-12
Compilation flags:
`static`
Provides:
type::type/1
type::check/2
Uses:
list
os
Remarks:

> - Provided types: This category adds `file`, `file(Extensions)`, `file(Extensions,Permissions)`, `directory`, `directory(Permissions)`, and `environment_variable` types for type-checking when using the `type` library object.

> - Type `file`: For checking if a term is an atom and an existing file.

> - Type `file(Extensions)`: For checking if a term is an atom and an existing file with one of the listed extensions (specified as `'.ext'`).

> - Type `file(Extensions,Permissions)`: For checking if a term is an atom and an existing file with one of the listed extensions (specified as `'.ext'`) and listed permissions ({`read`, `write`, `execute`}).

> - Type `directory`: For checking if a term is an atom and an existing directory.

> - Type `directory(Permissions)`: For checking if a term is an atom and an existing directory with the listed permissions ({`read`, `write`, `execute`}).

> - Type `environment_variable`: For checking if a term is an atom and an existing environment variable.

Inherited public predicates:
(none)

## Public predicates

(no local declarations; see entity ancestors if any)

## Protected predicates

(no local declarations; see entity ancestors if any)

## Private predicates

(no local declarations; see entity ancestors if any)

## Operators

(none)

See also

osp, os, type