Function: frameset--make

frameset--make is a byte-compiled function defined in frameset.el.gz.

Signature

(frameset--make &key VERSION TIMESTAMP APP NAME DESCRIPTION PROPERTIES STATES)

Documentation

Constructor for objects of type frameset.

Source Code

;; Defined in /usr/src/emacs/lisp/frameset.el.gz
(cl-defstruct (frameset (:type vector) :named
                        (:constructor frameset--make)
			;; Copier is defined below.
			(:copier nil))

  "A frameset encapsulates a serializable view of a set of frames and windows.

It contains the following slots, which can be accessed with
\(frameset-SLOT fs) and set with (setf (frameset-SLOT fs) VALUE):

  version      A read-only version number, identifying the format
		 of the frameset struct.  Currently its value is 1.
  timestamp    A read-only timestamp, the output of `current-time'.
  app          A symbol, or a list whose first element is a symbol, which
		 identifies the creator of the frameset and related info;
		 for example, desktop.el sets this slot to a list
		 `(desktop . ,desktop-file-version).
  name         A string, the name of the frameset instance.
  description  A string, a description for user consumption (to show in
		 menus, messages, etc).
  properties   A property list, to store both frameset-specific and
		 user-defined serializable data.
  states       A list of items (FRAME-PARAMETERS . WINDOW-STATE), in no
		 particular order.  Each item represents a frame to be
		 restored.  FRAME-PARAMETERS is a frame's parameter alist,
		 extracted with (frame-parameters FRAME) and filtered
		 through `frameset-filter-params'.
		 WINDOW-STATE is the output of `window-state-get' applied
		 to the root window of the frame.

To avoid collisions, it is recommended that applications wanting to add
private serializable data to `properties' either store all info under a
single, distinctive name, or use property names with a well-chosen prefix.

A frameset is intended to be used through the following simple API:

 - `frameset-save', the type's constructor, captures all or a subset of the
   live frames, and returns a serializable snapshot of them (a frameset).
 - `frameset-restore' takes a frameset, and restores the frames and windows
   it describes, as faithfully as possible.
 - `frameset-p' is the predicate for the frameset type.
 - `frameset-valid-p' checks a frameset's validity.
 - `frameset-copy' returns a deep copy of a frameset.
 - `frameset-prop' is a `setf'able accessor for the contents of the
   `properties' slot.
 - The `frameset-SLOT' accessors described above."

  (version     1              :read-only t)
  (timestamp   (current-time) :read-only t)
  (app         nil)
  (name        nil)
  (description nil)
  (properties  nil)
  (states      nil))