Coverage report: /home/runner/work/geb/geb/src/vampir/package.lisp

KindCoveredAll%
expression03 0.0
branch00nil
Key
Not instrumented
Conditionalized out
Executed
Not executed
 
Both branches taken
One branch taken
Neither branch taken
1
 ;; Setup this package to extract
2
 (defpackage #:geb.vampir.spec
3
   (:documentation "The Vampir model specification")
4
   (:use #:common-lisp)
5
   (:shadow :=)
6
   (:local-nicknames (#:ser #:serapeum))
7
   (:export
8
    ;; New Top Level Term Variants Defined
9
    :statement
10
    :constraint
11
    :expression
12
    :normal-form
13
    :primitive
14
 
15
    ;; New Term Lists Defined
16
    :normal-form-list
17
    :constraint-list
18
    ;; Term ADT Constructors Defined
19
    :alias       :name  :inputs   :outputs :body
20
    :pub         :wires
21
    :infix       :op    :lhs      :rhs
22
    :application :func  :arguments
23
    :bind        :names :value
24
    :equality    :lhs   :rhs
25
    :wire        :var
26
    :constant    :const
27
    :tuple       :wires
28
    :curly       :value
29
    :brackets
30
 
31
    ;; Constructors
32
    :make-alias :make-pub :make-infix :make-application :make-tuples :make-curly
33
    :make-bind  :make-equality :make-wire :make-constant :make-brackets))
34
 
35
 (geb.utils:muffle-package-variance
36
  (defpackage #:geb.vampir
37
    (:documentation "Provides a vampir representation")
38
    (:use #:common-lisp #:serapeum #:geb.vampir.spec)
39
    (:shadowing-import-from #:geb.vampir.spec #:op #:tuple)
40
    (:shadowing-import-from #:common-lisp  #:=)
41
    (:local-nicknames (#:spc #:geb.vampir.spec))
42
    (:export
43
     :extract
44
 
45
     ;; vampir api functions
46
     :*bool*
47
     :bool
48
     :*base-range*
49
     :*next-range*
50
     :next-range
51
     :*range-n*
52
     :range-n
53
     :*range32*
54
     :range32
55
 
56
     :*hd*
57
     :hd
58
     :*tl*
59
     :tl
60
     :nth
61
     :*negative*
62
     :negative
63
 
64
     :*plus-range*
65
     :plus-range
66
     :*mult-range*
67
     :mult-range
68
     :*minus-range*
69
     :minus-range
70
 
71
     :*isZero*
72
     :isZero
73
 
74
     :*combine*
75
     :combine
76
     :*drop-ith*
77
     :drop-ith
78
     :*int-range32*
79
     :int-range32
80
 
81
     :*negative32*
82
     :negative32
83
 
84
     :*non-negative32*
85
     :non-negative32
86
 
87
     :*range31*
88
     :range31
89
 
90
     :*int-range31*
91
     :int-range31
92
 
93
     :*less32*
94
     :less32
95
 
96
     :*pwless32*
97
     :pwless32
98
 
99
     :*mod32*
100
     :mod32
101
 
102
     :*pwmod32*
103
     :pwmod32
104
 
105
     :*range-n*
106
     :range-n
107
 
108
     :*mod-n*
109
     :mod-n)))
110