+OPTIONS: ':nil *:t -:t ::t <:t H:3 \n:nil ^:t arch:headline
+OPTIONS: author:t broken-links:nil c:nil creator:nil
+OPTIONS: d:(not "LOGBOOK") date:t e:t email:nil f:t inline:t num:t
+OPTIONS: p:nil pri:nil prop:nil stat:t tags:t tasks:t tex:t
+OPTIONS: timestamp:t title:t toc:t todo:t |:t
+TITLE: Mnas-Graph
+DATE: <2021-01-30 Сб>
+AUTHOR: Nick Matvyeyev
+EMAIL: mnasoft@gmail.com
+LANGUAGE: en
+SELECT_TAGS: export
+EXCLUDE_TAGS: noexport
+CREATOR: Emacs 26.1 (Org mode 9.1.9)
+INCLUDE: "~/org/header/header.org"
The transformation of the Graph into a format suitable for
visualization is carried out using the [[https://graphviz.org][Graphviz]] program.
** Example 2
+begin_src lisp
(let*
((g (make-instance 'mnas-graph:))
(v1 (make-instance 'mnas-graph: :owner g :name "v1"))
(v2 (make-instance 'mnas-graph: :owner g :name "v2"))
(v3 (make-instance 'mnas-graph: :owner g :name "v3"))
(r1 (make-instance 'mnas-graph: :tail v1 :head v2))
(r2 (make-instance 'mnas-graph: :tail v2 :head v3))
(r3 (make-instance 'mnas-graph: :tail v3 :head v1)))
(mnas-graph:insert-to v1 g)
(mnas-graph:insert-to v2 g)
(mnas-graph:insert-to v3 g)
(mnas-graph:insert-to r1 g)
(mnas-graph:insert-to r2 g)
(mnas-graph:insert-to r3 g)
(mnas-graph/view:view-graph g))
+end_src
** Example 3
+begin_src lisp
(mnas-graph/demos:demo-6)
+end_src