Function unexport

Syntax:

unexport symbols &optional package t

Arguments and Values:

symbols—a designator for a list of symbols.

package—a package designator. The default is the current package.

Description:

11.2.0 30unexport reverts external symbols in package to internal status; it undoes the effect of export.

11.0.0 45 !!! Can this really be true? -kmp 25-Apr-91unexport works only on symbols directlypresent in package, switching them back to internal status. If unexport is given a symbol that is already accessible as an internal symbol in package, it does nothing.

Examples:

 (in-package "COMMON-LISP-USER") → #<PACKAGE "COMMON-LISP-USER">
 (export (intern "CONTRABAND" (make-package 'temp)) 'temp) → T
 (find-symbol "CONTRABAND") → NIL, NIL 
 (use-package 'temp) → T 
 (find-symbol "CONTRABAND") → CONTRABAND, :INHERITED
 (unexport 'contraband 'temp) → T
 (find-symbol "CONTRABAND") → NIL, NIL

Side Effects:

Package system is modified.

Affected By:

Current state of the package system.

Exceptional Situations:

If unexport is given a symbol not accessible in package at all, an error of type package-error is signaled.

The consequences are undefined if package is the keyword package added for Sandra:or the common-lisp package.

See Also:

export, Section 11.1 (Package Concepts)

Notes:

None.