Journalingmake-journal-streamerload-journalGoTo Top

load-journal   pathname &key class-name-translations coalesce-strings disable-events estimated-peak-forward-references external-format readtable read-eval retain-classes retain-event-functions retain-event-printing => pathname, saved-time, saved-value[Function]

Purpose
Load a journal file.

Package   :gbbopen

Module   :streaming

Arguments and values

pathname     A pathname designator
class-name-translations     An association list (default is nil)
coalesce-strings     A generalized boolean (default is nil)
disable-events     A generalized boolean (default is t)
estimated-peak-forward-references     An integer (default is *default-estimated-peak-forward-references*)
external-format     An external-file-format designator (default is :default)
readtable     A readtable (default is *reading-saved/sent-objects-readtable*)
read-eval     A generalized boolean (default is nil)
retain-classes     An extended unit-classes specification (see below)
retain-event-functions     A generalized boolean (default is nil)
retain-event-printing     A generalized boolean (default is nil)
pathname     A pathname
saved-time     A Universal Time
saved-value     An object

Returns
Three values: the pathname of the journal file, the time when the journal was started, and the save value specified when the journal was created.

Description
If pathname does not specify a file type, the type jnl is added to it. Then, (user-homedir-pathname) is used to supply any missing components to pathname.

The class-name-translations association list, if specified, should contain conses of the form:
        (class-name . new-class-name)
for any class translations that should occur during repository loading.

If coalesce-strings is true, loaded strings that are equal become shared (eq). This coalescing is performed using a temporary hash table whose initial size can be specified by providing an integer value for coalesce-strings. If a hash table is provided as the value for coalesce-strings, it is used in place of the temporary hash table.

Unit instances that are referenced before they are defined are recorded using a temporary hash table whose initial size can be specified by providing an integer value for estimated-peak-forward-references.

See also
    make-journal-streamer
    save-blackboard-repository
    with-reading-saved/sent-objects-block

Example
Load the GBBopen Tutorial Example application (without running it) and then load a journal that was written previously:

  > :tutorial-example :noautorun 
     ...
  > (load-journal "tutorial")
  ;; 35 temporarily forward-referenced instances (peak count)
  #P"<homedir>/tutorial.jnl"
  3429178245
  #<path 1>
  >


The GBBopen Project


Journalingmake-journal-streamerload-journalGoTo Top