This is the 40ants-doc-plantuml Reference Manual, version 0.1.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Tue Jul 15 04:59:53 2025 GMT+0.
The main system appears first, followed by any subsystem dependency.
40ants-doc-plantumlAn extension to 40ants-doc Common Lisp documentation library to render PlantUML diagrams inside of the documentation.
Alexander Artemenko <svetlyak.40wt@gmail.com>
(GIT https://github.com/40ants/doc-plantuml)
Unlicense
<a id="x-2840ANTS-DOC-PLANTUML-DOCS-2FINDEX-3A-40README-2040ANTS-DOC-2FLOCATIVES-3ASECTION-29"></a>
# 40ants-doc-plantuml - An extension to 40ants-doc Common Lisp documentation library to render PlantUML diagrams inside of the documentation.
<a id="40-ants-doc-plantuml-asdf-system-details"></a>
## 40ANTS-DOC-PLANTUML ASDF System Details
* Description: An extension to 40ants-doc Common Lisp documentation library to render Plant‘UML‘ diagrams inside of the documentation.
* Licence: Unlicense
* Author: Alexander Artemenko <svetlyak.40wt@gmail.com>
* Homepage: [https://40ants.com/doc-plantuml][30dd]
* Bug tracker: [https://github.com/40ants/doc-plantuml/issues][95d4]
* Source control: [GIT][a2c9]
* Depends on: [40ants-doc][2c00], [40ants-doc-full][a797], [40ants-plantuml][80dc], [common-doc][fceb], [serapeum][c41d], [str][ef7f]
[][20ac]

<a id="x-2840ANTS-DOC-PLANTUML-DOCS-2FINDEX-3A-3A-40INSTALLATION-2040ANTS-DOC-2FLOCATIVES-3ASECTION-29"></a>
## Installation
You can install this library from Quicklisp, but you want to receive updates quickly, then install it from Ultralisp.org:
“‘
(ql-dist:install-dist "http://dist.ultralisp.org/"
                      :prompt nil)
(ql:quickload :40ants-doc-plantuml)
“‘
<a id="x-2840ANTS-DOC-PLANTUML-DOCS-2FINDEX-3A-3A-40SHORT-USAGE-2040ANTS-DOC-2FLOCATIVES-3ASECTION-29"></a>
## Usage
Use [‘defdiagram‘][8ebd] macro to define a diagram:
“‘
(defdiagram @demo ()
  "
@startuml
start
if (Are you\nusing\nCommon Lisp?) then (yes)
  label space1
  label space2
  :Cool!;
else (no)
  :Go learn it!;
  if (Do you know\nwhere\nto start?) then (yes)
    :Just do it!;
  else (no)
    :Open lisp-lang.org;
  endif
  :Join the\ncommunity.;
endif
:You are\nmarvelous!;
end
@enduml
")
“‘
Then you can include this diagram into a documentation section:
“‘
(defsection @example (:title "Example")
  "Here is our diagram:"
  (@demo diagram))
“‘
and image will be rendered like this:

<a id="x-2840ANTS-DOC-PLANTUML-DOCS-2FINDEX-3A-3A-40API-2040ANTS-DOC-2FLOCATIVES-3ASECTION-29"></a>
## API
<a id="x-2840ANTS-DOC-PLANTUML-DOCS-2FINDEX-3A-3A-4040ANTS-DOC-PLANTUML-3FPACKAGE-2040ANTS-DOC-2FLOCATIVES-3ASECTION-29"></a>
### 40ANTS-DOC-PLANTUML
<a id="x-28-23A-28-2819-29-20BASE-CHAR-20-2E-20-2240ANTS-DOC-PLANTUML-22-29-20PACKAGE-29"></a>
#### [package](7722) ‘40ants-doc-plantuml‘
<a id="x-2840ANTS-DOC-PLANTUML-DOCS-2FINDEX-3A-3A-7C-4040ANTS-DOC-PLANTUML-3FMacros-SECTION-7C-2040ANTS-DOC-2FLOCATIVES-3ASECTION-29"></a>
#### Macros
<a id="x-2840ANTS-DOC-PLANTUML-3ADEFDIAGRAM-20-2840ANTS-DOC-2FLOCATIVES-3AMACRO-29-29"></a>
##### [macro](842c) ‘40ants-doc-plantuml:defdiagram‘ name nil &body code
This macro creates a diagram object and binds it to a variable with given ‘NAME‘.
Forms given in the body, should return a string in the format of ‘PlantUML‘ diagram.
This could be a simple string or one or more lisp forms.
[30dd]: https://40ants.com/doc-plantuml
[8ebd]: https://40ants.com/doc-plantuml/#x-2840ANTS-DOC-PLANTUML-3ADEFDIAGRAM-20-2840ANTS-DOC-2FLOCATIVES-3AMACRO-29-29
[a2c9]: https://github.com/40ants/doc-plantuml
[20ac]: https://github.com/40ants/doc-plantuml/actions
[7722]: https://github.com/40ants/doc-plantuml/blob/9ae3e3c6cbecbad7e8b203335faa66148400ca44/src/core.lisp#L1
[842c]: https://github.com/40ants/doc-plantuml/blob/9ae3e3c6cbecbad7e8b203335faa66148400ca44/src/core.lisp#L38
[95d4]: https://github.com/40ants/doc-plantuml/issues
[2c00]: https://quickdocs.org/40ants-doc
[a797]: https://quickdocs.org/40ants-doc-full
[80dc]: https://quickdocs.org/40ants-plantuml
[fceb]: https://quickdocs.org/common-doc
[c41d]: https://quickdocs.org/serapeum
[ef7f]: https://quickdocs.org/str
* * *
###### [generated by [40ANTS-DOC](https://40ants.com/doc/)]
0.1.0
40ants-asdf-system (system).
40ants-doc-plantuml/core (system).
40ants-doc-plantuml/coreAlexander Artemenko <svetlyak.40wt@gmail.com>
(GIT https://github.com/40ants/doc-plantuml)
Unlicense
40ants-doc/locatives/base (system).
40ants-doc/locatives (system).
common-doc (system).
40ants-doc-full/commondoc/builder (system).
str (system).
serapeum (system).
40ants-doc-full/commondoc/image (system).
40ants-plantuml (system).
40ants-doc/object-package (system).
Files are sorted by type and then listed depth-first from the systems components trees.
40ants-doc-plantuml/40ants-doc-plantuml.asd40ants-doc-plantuml (system).
40ants-doc-plantuml/core/file-type.lisp40ants-doc-plantuml/core (system).
defdiagram (macro).
object-package (method).
to-commondoc (method).
diagram (class).
diagram-bound-to (reader method).
diagram-code (reader method).
diagram-filename (reader method).
Packages are listed by definition order.
40ants-doc-plantuml40ants-doc-plantuml/core
common-lisp.
defdiagram (macro).
bound-to (slot).
code (slot).
diagram-bound-to (generic reader).
diagram-code (generic reader).
diagram-filename (generic reader).
filename (slot).
Definitions are sorted by export status, category, package, and then by lexicographic order.
This macro creates a diagram object and binds it to a variable with given NAME.
Forms given in the body, should return a string in the format of ‘PlantUML‘ diagram. This could be a simple string or one or more lisp forms.
40ants-doc/locatives.
string
:filename
This slot is read-only.
string
:code
This slot is read-only.
(or null symbol)
:bound-to
This slot is read-only.
| Jump to: | D G M O T | 
|---|
| Jump to: | D G M O T | 
|---|
| Jump to: | B C F S | 
|---|
| Index Entry | Section | ||
|---|---|---|---|
|  | |||
| B | |||
| bound-to: | Private classes | ||
|  | |||
| C | |||
| code: | Private classes | ||
|  | |||
| F | |||
| filename: | Private classes | ||
|  | |||
| S | |||
| Slot, bound-to: | Private classes | ||
| Slot, code: | Private classes | ||
| Slot, filename: | Private classes | ||
|  | |||
| Jump to: | B C F S | 
|---|
| Jump to: | 4 C D F P S | 
|---|
| Jump to: | 4 C D F P S | 
|---|