[ Syntax Settings | The ECLiPSe Built-In Predicates | Reference Manual | Alphabetic Index ]

current_struct(?Name, ?Struct)

Succeeds if Name is the name of a currently visible structure and Struct is its specification
Name
Variable or atom
Struct
Variable or structure.

Calling Modes

Description

Used to retrieve the definition of a defined structure, or to enumerate all visible structure definitions.

Visible structures are those which have either been declared locally, exported, or which have been imported or reexported from another module.

Fail Conditions

Name is not the name of a visible structure definition

Resatisfiable

Yes.

Exceptions

(5) type error
Name is neither variable nor atom.
(5) type error
Struct is neither variable nor structure.

Examples

    :- local struct(employee(name,age,salary)).

    ?- current_struct(employee, Spec).
    Spec = employee(name, age, salary)
    yes.

    ?- current_struct(Name, Spec).
    Name = employee
    Spec = employee(name, age, salary)
    More (0.00s cpu) ? ;

    Name = suspend
    Spec = suspend(inst, constrained, bound)
    More (0.00s cpu) ? ;

    No (0.00s cpu)

    ?- current_struct(book, Spec).
    No (0.00s cpu)

See Also

local / 1, export / 1, struct / 1