Skip to content

Commit ea23b96

Browse files
committed
Adjusted abstract-sem-tree-generator
1 parent 4e0f64d commit ea23b96

File tree

2 files changed

+79
-69
lines changed

2 files changed

+79
-69
lines changed

DiffBackend/tests/abstract-sem-tree-generator.lisp

Lines changed: 72 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
:func-arg-forms ())))
3737

3838
(def-ast-test funcall.2
39-
"(fun 1)"
39+
"(fun 1)"
4040
(list
4141
(make-instance
4242
'function-call-node
@@ -50,18 +50,18 @@
5050
:id 2))
5151
:parenthesis-info `((:lparen-coord 1 1)
5252
(:rparen-coord 1 7))
53-
:func-arg-forms `(,(make-instance
54-
'lexem-wrapper-node
55-
:lexem-info
56-
(make-lexem
57-
"1"
58-
1
59-
6
60-
:integer
61-
:id 3))))))
53+
:func-arg-forms (vector (make-instance
54+
'lexem-wrapper-node
55+
:lexem-info
56+
(make-lexem
57+
"1"
58+
1
59+
6
60+
:integer
61+
:id 3))))))
6262

6363
(def-ast-test defun.1
64-
"(defun a () 1)"
64+
"(defun a () 1)"
6565
(list
6666
(make-instance
6767
'defun-node
@@ -88,17 +88,18 @@
8888
:parenthesis-info `((:lparen-coord 1 10)
8989
(:rparen-coord 1 11))
9090
:elements ())
91-
:body-forms `(,(make-instance
92-
'lexem-wrapper-node
93-
:lexem-info (make-lexem
94-
"1"
95-
1
96-
13
97-
:integer
98-
:id 6))))))
91+
:body-forms (vector
92+
(make-instance
93+
'lexem-wrapper-node
94+
:lexem-info (make-lexem
95+
"1"
96+
1
97+
13
98+
:integer
99+
:id 6))))))
99100

100101
(def-ast-test defun.2
101-
"(defun a (b) b)"
102+
"(defun a (b) b)"
102103
(list
103104
(make-instance
104105
'defun-node
@@ -124,25 +125,25 @@
124125
'list-node
125126
:parenthesis-info `((:lparen-coord 1 10)
126127
(:rparen-coord 1 12))
127-
:elements `(,(make-instance
128-
'lexem-wrapper-node
129-
:lexem-info (make-lexem
130-
"b"
131-
1
132-
11
133-
:symbol
134-
:id 5))))
135-
:body-forms `(,(make-instance
136-
'lexem-wrapper-node
137-
:lexem-info (make-lexem
138-
"b"
139-
1
140-
14
141-
:symbol
142-
:id 7))))))
128+
:elements (vector (make-instance
129+
'lexem-wrapper-node
130+
:lexem-info (make-lexem
131+
"b"
132+
1
133+
11
134+
:symbol
135+
:id 5))))
136+
:body-forms (vector (make-instance
137+
'lexem-wrapper-node
138+
:lexem-info (make-lexem
139+
"b"
140+
1
141+
14
142+
:symbol
143+
:id 7))))))
143144

144145
(def-ast-test defun.3
145-
"(defun a (b) (f b 1))"
146+
"(defun a (b) (f b 1))"
146147
(list
147148
(make-instance
148149
'defun-node
@@ -168,40 +169,42 @@
168169
'list-node
169170
:parenthesis-info `((:lparen-coord 1 10)
170171
(:rparen-coord 1 12))
171-
:elements `(,(make-instance
172+
:elements (vector
173+
(make-instance
174+
'lexem-wrapper-node
175+
:lexem-info (make-lexem
176+
"b"
177+
1
178+
11
179+
:symbol
180+
:id 5))))
181+
:body-forms (vector
182+
(make-instance
183+
'function-call-node
184+
:func-lexem (make-instance
185+
'lexem-wrapper-node
186+
:lexem-info (make-lexem
187+
"f"
188+
1
189+
15
190+
:symbol
191+
:id 8))
192+
:parenthesis-info `((:lparen-coord 1 14)
193+
(:rparen-coord 1 20))
194+
:func-arg-forms (vector
195+
(make-instance
172196
'lexem-wrapper-node
173197
:lexem-info (make-lexem
174198
"b"
175199
1
176-
11
200+
17
177201
:symbol
178-
:id 5))))
179-
:body-forms `(,(make-instance
180-
'function-call-node
181-
:func-lexem (make-instance
182-
'lexem-wrapper-node
183-
:lexem-info (make-lexem
184-
"f"
185-
1
186-
15
187-
:symbol
188-
:id 8))
189-
:parenthesis-info `((:lparen-coord 1 14)
190-
(:rparen-coord 1 20))
191-
:func-arg-forms `(
192-
,(make-instance
193-
'lexem-wrapper-node
194-
:lexem-info (make-lexem
195-
"b"
196-
1
197-
17
198-
:symbol
199-
:id 9))
200-
,(make-instance
201-
'lexem-wrapper-node
202-
:lexem-info (make-lexem
203-
"1"
204-
1
205-
19
206-
:integer
207-
:id 10))))))))
202+
:id 9))
203+
(make-instance
204+
'lexem-wrapper-node
205+
:lexem-info (make-lexem
206+
"1"
207+
1
208+
19
209+
:integer
210+
:id 10))))))))

DiffBackend/tests/test-utils.lisp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,13 @@
3131
(format t "Length ~A : ~A~%" (length obj1) obj1)
3232
(format t "Length ~A : ~A~%" (length obj2) obj2)
3333
nil)))
34+
(vector (if (= (length obj1) (length obj2))
35+
(every #'deep-equal obj1 obj2)
36+
(progn
37+
(format t "Length not equal!~%")
38+
(format t "Length ~A : ~A~%" (length obj1) obj1)
39+
(format t "Length ~A : ~A~%" (length obj2) obj2)
40+
nil)))
3441
(t (unless (equalp obj1 obj2)
3542
(print obj1)
3643
(print obj2)

0 commit comments

Comments
 (0)