NextPrevUpTopContentsIndex

merge-ef-specs

Function
Summary

Creates a new external format spec from two other external format specs.

Package

system

Signature

merge-ef-specs ef-spec1 ef-spec2 => ef-spec

Arguments

ef-spec1

The first external format spec to use.

ef-spec2

The second external format spec to use.

Values

ef-spec

The resultant external format spec created from information in ef-spec1 and ef-spec2 .

Description

Returns an external format spec constructed by adding information not supplied in ef-spec1 from ef-spec2 , subject to the note below. The arguments are either symbols or lists.

If ef-spec1 is :default , return ef-spec2 .

If ef-spec1 is a list beginning with :default and ef-spec2 is a symbol, return ( ef-spec2 . (cdr ef-spec1 ))

If ef-spec1 is a list beginning with :default and ef-spec2 is a list, return ((car ef-spec2 ) . parameters ) where parameters is a destructuring lambda list containing the parameter descriptions of ef-spec1 and any additional parameter descriptions from ef-spec2 .

If ef-spec1 is a symbol other than :default , or a list beginning with a symbol other than :default , and ef-spec2 is a symbol, return ef-spec1 .

If ef-spec1 is a symbol other than :default , and ef-spec2 is a list, return ( ef-spec1 . (cdr ef-spec2 )) .

If ef-spec1 is a list beginning with a symbol other than :default , and ef-spec2 is a list, return
((car ef-spec1 ) . parameters ) where parameters is a destructuring lambda list containing the parameter descriptions of ef-spec1 and any additional parameter descriptions from ef-spec2 .

Note: on Windows, the parameters :id and :handle-error-out of the win32:code-page external format are not merged.


LispWorks Reference Manual - 6 Apr 2005

NextPrevUpTopContentsIndex