Next: Introduction, Previous: (dir), Up: (dir) [Contents][Index]
This is the fare-mop Reference Manual, version 1.0.1, generated automatically by Declt version 2.4 "Will Decker" on Wed Jun 20 11:45:31 2018 GMT+0.
• Introduction: | What fare-mop 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 |
fare-mop has a few simple utilities relying on the MOP. It depends on CLOSER-MOP for portable MOP access. The main utilities are: SIMPLE-PRINT-OBJECT-MIXIN class mixin to give you a useful PRINT-OBJECT method for free SIMPLE-PRINT-OBJECT a simple PRINT-OBJECT function you can use it without the mixin (useful when you don't want to change the class hierarchy of some library you're using, but still want to simply inspect objects and/or define a PRINT-OBJECT method on them). COLLECT-SLOTS a utility used by the above function, to collect a p-list describing the slots bound in an object SLOTS-TO-PRINT a way to customize which slots get printed by SIMPLE-PRINT-OBJECT-MIXIN Other utilities include: REMAKE-OBJECT a utility for "copying" objects by calling make-instance with the "same" initialization arguments as an original objects, plus overriding keyword arguments. Useful for experimenting with a pure functional OO style. Not for use where performance is important. See documentation strings for details.
Next: Files, Previous: Introduction, Up: Top [Contents][Index]
The main system appears first, followed by any subsystem dependency.
• The fare-mop system: |
Francois-Rene Rideau
Utilities using the MOP; notably make informative pretty-printing trivial
fare-mop is a small collection of utilities using the MOP.
It notably contains a method SIMPLE-PRINT-OBJECT, and
a mixin SIMPLE-PRINT-OBJECT-MIXIN that allow you to trivially define
PRINT-OBJECT methods that print the interesting slots in your objects,
which is great for REPL interaction and debugging.
1.0.1
fare-mop.asd (file)
Files are sorted by type and then listed depth-first from the systems components trees.
• Lisp files: |
• The fare-mop.asd file: | ||
• The fare-mop/package.lisp file: | ||
• The fare-mop/utilities.lisp file: |
Next: The fare-mop/package<dot>lisp file, Previous: Lisp files, Up: Lisp files [Contents][Index]
fare-mop.asd
fare-mop (system)
Next: The fare-mop/utilities<dot>lisp file, Previous: The fare-mop<dot>asd file, Up: Lisp files [Contents][Index]
Previous: The fare-mop/package<dot>lisp file, Up: Lisp files [Contents][Index]
package.lisp (file)
fare-mop (system)
utilities.lisp
Next: Definitions, Previous: Files, Up: Top [Contents][Index]
Packages are listed by definition order.
• The fare-mop package: |
package.lisp (file)
Definitions are sorted by export status, category, package, and then by lexicographic order.
• Exported definitions: |
Previous: Definitions, Up: Definitions [Contents][Index]
• Exported functions: | ||
• Exported generic functions: | ||
• Exported classes: |
Next: Exported generic functions, Previous: Exported definitions, Up: Exported definitions [Contents][Index]
Given an OBJECT and SLOTS designating a list of slot designators,
return a p-list of an INITARG and VALUE
for each of those of the specified slots that are bound.
A slot designator may be a SLOT-DEFINITION object,
a KEYWORD specifying the INITARG of the slot,
or a SYMBOL naming the slot.
If the slot has no INITARG, the slot name is used instead in the p-list
utilities.lisp (file)
A function to build a new object of the same class as OBJECT,
initialized with the specified KEYS, plus keys deduced from the original object
by those slots that both are bound and have a defined initarg.
Note: this function is useful for experimental programming,
but use of runtime introspection means
this function isn’t suited where performance is important.
utilities.lisp (file)
This function will introspect you object’s slots to print it.
You can call it explicitly from your print-object methods,
or implicitly by just inheritting from SIMPLE-PRINT-OBJECT-MIXIN.
If SLOTS is T (the default), print all slots as per CLOSER-MOP:COMPUTE-SLOTS.
If SLOTS is a list of slot designators, print them.
Slots are printed as a p-list as per FARE-MOP:COLLECT-SLOTS.
The IDENTITY keyword is as per PRINT-UNREADABLE-OBJECT.
utilities.lisp (file)
Next: Exported classes, Previous: Exported functions, Up: Exported definitions [Contents][Index]
utilities.lisp (file)
Previous: Exported generic functions, Up: Exported definitions [Contents][Index]
Mixin to trivially give a print-object method to your class.
If you don’t want to print all slots, define a method on FARE-MOP:SLOTS-TO-PRINT
to return a list of slot designators for those slots you want to print,
as per FARE-MOP:COLLECT-SLOTS.
utilities.lisp (file)
standard-object (class)
print-object (method)
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 |
---|
Jump to: | F L |
---|
Next: Variable index, Previous: Concept index, Up: Indexes [Contents][Index]
Jump to: | C F G M R S |
---|
Jump to: | C F G M R S |
---|
Next: Data type index, Previous: Function index, Up: Indexes [Contents][Index]
Previous: Variable index, Up: Indexes [Contents][Index]
Jump to: | C F P S |
---|
Jump to: | C F P S |
---|