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

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).
bound(upper).
bound(lower).

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