boundary (library)

Author(s): Göran Smedbäck.

This module offers predicate to check values according to their boundaries and offers lists of possible node ascendents.

Usage and interface

Documentation on exports

PREDICATE

Usage:boundary_check(Value_to_check,Init_value,Bound)

This predicate check the boundaries of the given value according to the boudary values. If the value is wrong according to the boundaries, the value is checked according to the initial value given. If the value continues to be wrong, an error will be raised accordingly.

  • Call and exit should be compatible with:
    (basic_props:atm/1)Value_to_check is an atom.
    (basic_props:list/2)Init_value is a list of atms.
    (native_props:bound/1)Bound is a direction of approximation (upper or lower bound).
  • The following properties should hold at call time:
    (term_typing:nonvar/1)Value_to_check is currently a term which is not a free variable.
    (term_typing:nonvar/1)Init_value is currently a term which is not a free variable.
    (term_typing:nonvar/1)Bound is currently a term which is not a free variable.

PREDICATE

Usage:boundary_rotation_first(Bound_double,Bound)

The predicate will extract the first bounds from a double bound.

  • Call and exit should be compatible with:
    (internal_types:bound_double/1)Bound_double is a variable interval.
    (native_props:bound/1)Bound is a direction of approximation (upper or lower bound).
  • The following properties should hold at call time:
    (term_typing:nonvar/1)Bound_double is currently a term which is not a free variable.
    (term_typing:var/1)Bound is a free variable.

PREDICATE

Usage:boundary_rotation_last(Bound_double,Bound)

The predicate will extract the last bounds from a double bound.

  • Call and exit should be compatible with:
    (internal_types:bound_double/1)Bound_double is a variable interval.
    (native_props:bound/1)Bound is a direction of approximation (upper or lower bound).
  • The following properties should hold at call time:
    (term_typing:nonvar/1)Bound_double is currently a term which is not a free variable.
    (term_typing:var/1)Bound is a free variable.

PREDICATE

Usage:reserved_words(List)

Returns a list with the reserved words, words prohibited to use in cases not appropiated.

  • Call and exit should be compatible with:
    (basic_props:list/2)List is a list of atms.
  • The following properties should hold at call time:
    (term_typing:var/1)List is a free variable.

PREDICATE

Usage:children_nodes(List)

Returns a list of all nodes possible as children nodes.

  • Call and exit should be compatible with:
    (basic_props:list/2)List is a list of atms.
  • The following properties should hold at call time:
    (term_typing:var/1)List is a free variable.