internal_types (library)
Author(s): Göran Smedbäck.These are the internal data types used in the predicates. They are only used to simplify this documentation and make it more understandable.
Implemented by Göran Smedbäck
Usage and interface
- Library usage:
:- use_module(library(internal_types)). - Exports:
- Regular Types:
bound/1, bound_double/1, dictionary/1, environment/1, parse/1, tree/1, whitespace/1.
- Regular Types:
- Imports:
- Packages:
prelude, nonpure, assertions, isomodes, regtypes.
- Packages:
Documentation on exports
REGTYPE
Min is a number or an atom that indicates the minimal value, Max indicates the maximal.
bound(bound(Min,Max)) :- atm(Min), atm(Max).
(True) Usage:bound(Bound)
Bound is a variable interval.
REGTYPE
Min is a number or an atom that indicates the minimal value, Max indicates the maximal. The first two for some value and the second pair for some other. Typically used for types that are compound, e.g., rotationvalue.
bound_double(bound(Min0,Max0,Min1,Max1)) :- atm(Min0), atm(Max0), atm(Min1), atm(Max1).
(True) Usage:bound_double(Bound)
Bound is a variable interval.
REGTYPE
Dic is a tree structure and is used as the internal representation of the dictionary.
dictionary(dic(Dic)) :- tree(Dic). dictionary(X) :- term(X).
(True) Usage:dictionary(Dictionary)
Dictionary is a dictionary.
REGTYPE
EnvironmentType one of 'DEF','PROTO','EXTERNPROTO' with the name Name. Whitespace is a structure with whitespace information.
environment(env(Env,Name,WhiteSpace)) :- atm(Env), atm(Name), whitespace(WhiteSpace).
(True) Usage:environment(Environment)
Environment is an environment structure.
REGTYPE
In is the list of tokens to parse and Out is the resulting list after the parsing. Env is of type env and is the environment-structure.The dictinonary Dic contains created information and structures.
parse(parse(In,Out,Env,Dic)) :- list(In), list(Out), environment(Env), dictionary(Dic).
(True) Usage:parse(Parse)
Parse is a parse structure.
REGTYPE
Key is the search-key, Leaf is the information, Left and Right are more dictionary posts, where Left have less Key-value.
tree(tree(Key,Leaf,Left,Right)) :- atm(Key), leaf(Leaf), tree(Left), tree(Right).
(True) Usage:tree(Tree)
Tree is a tree structure.
REGTYPE
The Row and Indentation information. The row information used when parsing the VRML code to give accurate error position and the indentation is used when generating VRML code from terms.
whitespace(w(Row,Indentation)) :- number(Row), number(Indentation).
(True) Usage:whitespace(Whitespace)
Whitespace is a whitespace structure.