The symbol-namespaces Reference Manual

This is the symbol-namespaces Reference Manual, version 1.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Sep 15 06:49:44 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 symbol-namespaces

Defines a new kind of package that’s named by a symbol rather than a string and that maps from existing symbols to their respective "implicitly managed" counterparts. The motivating use-case is to conceptually allow multiple definitions of the same kind on a single symbol, without conflicts.

Author

Jean-Philippe Paradis <>

License

Public Domain

Version

1.0

Dependency

map-bind (system).

Source

symbol-namespaces.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 symbol-namespaces/symbol-namespaces.asd

Source

symbol-namespaces.asd.

Parent Component

symbol-namespaces (system).

ASDF Systems

symbol-namespaces.


3.1.2 symbol-namespaces/package.lisp

Source

symbol-namespaces.asd.

Parent Component

symbol-namespaces (system).

Packages

symbol-namespaces.


3.1.3 symbol-namespaces/main.lisp

Dependency

package.lisp (file).

Source

symbol-namespaces.asd.

Parent Component

symbol-namespaces (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 symbol-namespaces

Source

package.lisp.

Nicknames
  • symbol-namespace
  • symspaces
  • symspace
Use List

common-lisp.

Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Macros

Macro: define (name &body options)
Package

symbol-namespaces.

Source

main.lisp.


5.1.2 Ordinary functions

Function: ensure (name &rest keys &key class &allow-other-keys)
Package

symbol-namespaces.

Source

main.lisp.

Function: locate (name &key errorp)
Package

symbol-namespaces.

Source

main.lisp.

Function: (setf locate) (name &key errorp)
Package

symbol-namespaces.

Source

main.lisp.


5.1.3 Generic functions

Generic Function: find-package (package symbol-namespace)
Package

symbol-namespaces.

Source

main.lisp.

Methods
Method: find-package ((package package) (symbol-namespace packages-identity-mixin))
Method: find-package ((package package) (symbol-namespace packages-name-mixin))
Generic Function: (setf find-package) (package symbol-namespace)
Package

symbol-namespaces.

Source

main.lisp.

Methods
Method: (setf find-package) ((package package) (symbol-namespace packages-identity-mixin))
Method: (setf find-package) ((package package) (symbol-namespace packages-name-mixin))
Generic Function: find-symbol (symbol symbol-namespace)
Package

symbol-namespaces.

Source

main.lisp.

Methods
Method: find-symbol ((symbol symbol) (symbol-namespace packages))
Generic Function: intern-package (package symbol-namespace)
Package

symbol-namespaces.

Source

main.lisp.

Methods
Method: intern-package ((package package) (symbol-namespace namespace))
Generic Function: intern-symbol (symbol symbol-namespace)
Package

symbol-namespaces.

Source

main.lisp.

Methods
Method: intern-symbol ((symbol symbol) (symbol-namespace packages))
Generic Function: make-package-name (package symbol-namespace)
Package

symbol-namespaces.

Source

main.lisp.

Methods
Method: make-package-name ((package package) (symbol-namespace namespace))
Generic Reader: name (namespace)
Package

symbol-namespaces.

Source

main.lisp.

Methods
Reader Method: name ((name-mixin name-mixin))

automatically generated reader method

Target Slot

%name.


5.1.4 Standalone methods

Method: print-object ((mixin name-mixin) stream)
Source

main.lisp.


5.1.5 Classes

Class: name-mixin
Package

symbol-namespaces.

Source

main.lisp.

Direct subclasses

standard-namespace.

Direct methods
Direct slots
Slot: %name
Type

symbol

Initargs

:name

Readers

name.

Writers

This slot is read-only.

Class: namespace
Package

symbol-namespaces.

Source

main.lisp.

Direct subclasses

standard-namespace.

Direct methods
Class: packages
Package

symbol-namespaces.

Source

main.lisp.

Direct subclasses
Direct methods
Class: packages-identity-mixin
Package

symbol-namespaces.

Source

main.lisp.

Direct superclasses

packages.

Direct subclasses

standard-namespace.

Direct methods
Direct slots
Slot: %packages
Initform

(make-hash-table :test (quote eq))

Readers

%packages.

Writers

This slot is read-only.

Class: packages-name-mixin
Package

symbol-namespaces.

Source

main.lisp.

Direct superclasses

packages.

Direct methods
Direct slots
Slot: %packages
Initform

(make-hash-table :test (quote equal))

Readers

%packages.

Writers

This slot is read-only.

Class: standard-namespace
Package

symbol-namespaces.

Source

main.lisp.

Direct superclasses

5.2 Internals


5.2.1 Special variables

Special Variable: *namespaces*
Package

symbol-namespaces.

Source

main.lisp.


5.2.2 Ordinary functions

Function: %call-with-package-name (function package)
Package

symbol-namespaces.

Source

main.lisp.

Function: %remove-keys (keys plist)
Package

symbol-namespaces.

Source

main.lisp.


5.2.3 Generic functions

Generic Reader: %packages (object)
Package

symbol-namespaces.

Methods
Reader Method: %packages ((packages-name-mixin packages-name-mixin))

automatically generated reader method

Source

main.lisp.

Target Slot

%packages.

Reader Method: %packages ((packages-identity-mixin packages-identity-mixin))

automatically generated reader method

Source

main.lisp.

Target Slot

%packages.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
D   E   F   G   I   L   M   N   P  
Index Entry  Section

%
%call-with-package-name: Private ordinary functions
%packages: Private generic functions
%packages: Private generic functions
%packages: Private generic functions
%remove-keys: Private ordinary functions

(
(setf find-package): Public generic functions
(setf find-package): Public generic functions
(setf find-package): Public generic functions
(setf locate): Public ordinary functions

D
define: Public macros

E
ensure: Public ordinary functions

F
find-package: Public generic functions
find-package: Public generic functions
find-package: Public generic functions
find-symbol: Public generic functions
find-symbol: Public generic functions
Function, %call-with-package-name: Private ordinary functions
Function, %remove-keys: Private ordinary functions
Function, (setf locate): Public ordinary functions
Function, ensure: Public ordinary functions
Function, locate: Public ordinary functions

G
Generic Function, %packages: Private generic functions
Generic Function, (setf find-package): Public generic functions
Generic Function, find-package: Public generic functions
Generic Function, find-symbol: Public generic functions
Generic Function, intern-package: Public generic functions
Generic Function, intern-symbol: Public generic functions
Generic Function, make-package-name: Public generic functions
Generic Function, name: Public generic functions

I
intern-package: Public generic functions
intern-package: Public generic functions
intern-symbol: Public generic functions
intern-symbol: Public generic functions

L
locate: Public ordinary functions

M
Macro, define: Public macros
make-package-name: Public generic functions
make-package-name: Public generic functions
Method, %packages: Private generic functions
Method, %packages: Private generic functions
Method, (setf find-package): Public generic functions
Method, (setf find-package): Public generic functions
Method, find-package: Public generic functions
Method, find-package: Public generic functions
Method, find-symbol: Public generic functions
Method, intern-package: Public generic functions
Method, intern-symbol: Public generic functions
Method, make-package-name: Public generic functions
Method, name: Public generic functions
Method, print-object: Public standalone methods

N
name: Public generic functions
name: Public generic functions

P
print-object: Public standalone methods