Coverage report: /home/ellis/comp/core/app/skel/core/proto.lisp
Kind | Covered | All | % |
expression | 0 | 40 | 0.0 |
branch | 0 | 0 | nil |
Key
Not instrumented
Conditionalized out
Executed
Not executed
Both branches taken
One branch taken
Neither branch taken
1
;;; proto.lisp --- Skel Core Protocol
6
(in-package :skel/core/proto)
8
;; ref: https://spdx.org/licenses/
9
(deftype license-designator () `(or null string pathname (member :mpl2 :wtfpl :lgpg :llgpl :gpl :mit :mit0)))
11
(deftype script-designator () '(member :bin :sh :bash :zsh :nu :lisp :python))
13
(deftype document-designator () '(member :org :txt :pdf :html :md))
15
(deftype contact-designator () '(or string (cons string string)))
17
(defgeneric sk-run (self)
18
(:documentation "Run the object SELF."))
19
(defgeneric sk-new (self &rest args &key &allow-other-keys)
20
(:documentation "Create a fresh instance of object SELF."))
21
(defgeneric sk-save (self)
22
(:documentation "Save object SELF."))
23
(defgeneric sk-tangle (self &rest params &key &allow-other-keys)
24
(:documentation "Tangle object self with params"))
25
(defgeneric sk-weave (self)
26
(:documentation "Weave object self with params"))
27
(defgeneric sk-call (self arg)
28
(:documentation "Call SELF with ARG."))
29
(defgeneric sk-call* (self &rest args)
30
(:documentation "Call SELF with ARGS."))
31
(defgeneric sk-print (self &key &allow-other-keys)
32
(:documentation "Print object SELF."))
33
(defgeneric sk-load (self &key &allow-other-keys)
34
(:documentation "Load or reload object SELF."))
35
(defgeneric sk-load-component (kind form &optional path)
36
(:documentation "Load a component of type KIND from provided FORM, producing an SK-COMPONENT
37
type. Usually calls SK-TRANSFORM or SK-CONVERT internally.
39
PATH is an optional directory pathname which will be merged with a filename
40
found in FORM. Defaults to *DEFAULT-PATHNAME-DEFAULTS*."))
41
(defgeneric sk-compile (self &key &allow-other-keys)
42
(:documentation "Compile object SELF."))
43
(defgeneric sk-build (self &key &allow-other-keys)
44
(:documentation "Build a skel-object."))
45
(defgeneric sk-install (self &key &allow-other-keys)
46
(:documentation "Install a skel-object."))
47
(defgeneric sk-test (self &key &allow-other-keys)
48
(:documentation "Test a skel-object."))
49
(defgeneric sk-deploy (self &key &allow-other-keys)
50
(:documentation "Deploy a skel-object."))
51
(defgeneric sk-fetch (self &key &allow-other-keys)
52
(:documentation "Fetch a skel-object."))
53
(defgeneric sk-pack (self &key &allow-other-keys)
54
(:documentation "Pack a skel-object."))
55
(defgeneric sk-unpack (self &key &allow-other-keys)
56
(:documentation "Unpack a skel-object."))
57
(defgeneric sk-bundle (self &key &allow-other-keys)
58
(:documentation "Bundle a skel-object."))
59
(defgeneric sk-unbundle (self &key &allow-other-keys)
60
(:documentation "Unbundle a skel-object."))
61
(defgeneric sk-transform (self other &key &allow-other-keys)
62
(:documentation "Transform SELF to skel-object of type OTHER."))
63
(defgeneric sk-convert (self)
64
(:documentation "Convert the object SELF."))
65
(defgeneric sk-read (self stream)
66
(:documentation "Read and fill SELF with an object from STREAM."))
67
(defgeneric sk-read-file (self path)
68
(:documentation "Read a PATH from the filesystem with SELF."))
69
(defgeneric sk-write (self stream)
70
(:documentation "Write object SELF to STREAM."))
71
(defgeneric sk-writeln (self stream)
72
(:documentation "Write a line from SELF to STREAM."))
73
(defgeneric sk-write-string (self)
74
(:documentation "Return a string from SELF."))
75
(defgeneric sk-write-file (self &key path &allow-other-keys)
76
(:documentation "Write from SELF to file PATH."))
77
(defgeneric sk-install-user-config (self config)
78
(:documentation "Popu`late SELF with configuration object CONFIG."))
79
(defgeneric sk-find (name self &key &allow-other-keys)
80
(:documentation "Find a rule with the given NAME in SELF."))
81
(defgeneric sk-register (self &key &allow-other-keys)
82
(:documentation "Register sk-object SELF with the current Lisp system."))