Next: Introduction, Previous: (dir), Up: (dir) [Contents][Index]
This is the metap Reference Manual, generated automatically by Declt version 3.0 "Montgomery Scott" on Tue Dec 22 14:23:25 2020 GMT+0.
• Introduction | What metap is all about | |
• Systems | The systems documentation | |
• Files | The files documentation | |
• Packages | The packages documentation | |
• Definitions | The symbols documentation | |
• Indexes | Concepts, functions, variables and data types |
Metap provides metaclass propagation along class inheritance structure. Metap uses closer-mop and changes
so it could conflicts with other library modifing same method.
You got some idea which use metaclass like
(defclass some-meta-class (standard-class) ())
(defmethod something1 ((class some-meta-class) ...) ...)
(defmethod something2 ((class some-meta-class) ...) ...)
and use this for some classes like
(defclass some-class1 () () (:metaclass 'some-meta-class))
(defclass some-class2 (some-class1) () (:metaclass 'some-meta-class))
(defclass some-class3 (some-class2) () (:metaclass 'some-meta-class))
(defclass some-class4 (some-class1) () (:metaclass 'some-meta-class))
... :metaclass :metaclass :metaclass :metaclass
This is boring. Using metap, it can simply be written like
(defclass some-mixin () ())
(metap:register-m1-m2-pair 'some-mixin 'some-meta-class)
(defclass some-class1 (some-mixin) ())
(defclass some-class2 (some-class1) ())
(defclass some-class3 (some-class2) ())
(defclass some-class4 (some-class1) ())
Also see cl-singleton-mixin (https://github.com/hipeta/cl-singleton-mixin) which is written by using metap.
(ql:quickload :metap)
Metap is released under the MIT License, see LICENSE file.
Next: Files, Previous: Introduction, Up: Top [Contents][Index]
The main system appears first, followed by any subsystem dependency.
• The metap system |
hipeta
MIT
Metap provides metaclass propagation along class inheritance structure.
closer-mop
metap.asd (file)
metap.lisp (file)
Files are sorted by type and then listed depth-first from the systems components trees.
• Lisp files |
• The metap.asd file | ||
• The metap/metap.lisp file |
Next: The metap/metap․lisp file, Previous: Lisp files, Up: Lisp files [Contents][Index]
metap.asd
metap (system)
Previous: The metap․asd file, Up: Lisp files [Contents][Index]
metap (system)
metap.lisp
compute-precedense-list (function)
Next: Definitions, Previous: Files, Up: Top [Contents][Index]
Packages are listed by definition order.
• The metap package |
metap.lisp (file)
common-lisp
compute-precedense-list (function)
Definitions are sorted by export status, category, package, and then by lexicographic order.
• Exported definitions | ||
• Internal definitions |
Next: Internal definitions, Previous: Definitions, Up: Definitions [Contents][Index]
• Exported special variables | ||
• Exported macros | ||
• Exported functions |
Next: Exported macros, Previous: Exported definitions, Up: Exported definitions [Contents][Index]
metap.lisp (file)
Next: Exported functions, Previous: Exported special variables, Up: Exported definitions [Contents][Index]
metap.lisp (file)
Previous: Exported macros, Up: Exported definitions [Contents][Index]
metap.lisp (file)
Previous: Exported definitions, Up: Definitions [Contents][Index]
• Internal functions |
Previous: Internal definitions, Up: Internal definitions [Contents][Index]
metap.lisp (file)
Previous: Definitions, Up: Top [Contents][Index]
• Concept index | ||
• Function index | ||
• Variable index | ||
• Data type index |
Next: Function index, Previous: Indexes, Up: Indexes [Contents][Index]
Jump to: | F L M |
---|
Jump to: | F L M |
---|
Next: Variable index, Previous: Concept index, Up: Indexes [Contents][Index]
Jump to: | C F M R V |
---|
Jump to: | C F M R V |
---|
Next: Data type index, Previous: Function index, Up: Indexes [Contents][Index]
Jump to: | *
S |
---|
Index Entry | Section | ||
---|---|---|---|
| |||
* | |||
*metap-m1-m2-pairs* : | Exported special variables | ||
| |||
S | |||
Special Variable, *metap-m1-m2-pairs* : | Exported special variables | ||
|
Jump to: | *
S |
---|
Previous: Variable index, Up: Indexes [Contents][Index]
Jump to: | M P S |
---|
Index Entry | Section | ||
---|---|---|---|
| |||
M | |||
metap : | The metap system | ||
metap : | The metap package | ||
| |||
P | |||
Package, metap : | The metap package | ||
| |||
S | |||
System, metap : | The metap system | ||
|
Jump to: | M P S |
---|