Skip to content

Commit e57f12d

Browse files
committed
Add general formatting to chained functions
1 parent 375f12a commit e57f12d

File tree

1 file changed

+9
-13
lines changed

1 file changed

+9
-13
lines changed

state-manipulation.scm

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -164,10 +164,7 @@
164164
#f
165165
cfuncsinstance)]
166166
[function-return (get-value-from-pair evaled-function)]
167-
[function-state (get-state-from-pair evaled-function)]
168-
[debg (delete-this state)]
169-
[debug2 (delete-this2 function-state)]
170-
[debug3 (delete-this (G-merge-states->state state function-state))])
167+
[function-state (get-state-from-pair evaled-function)])
171168
(cond
172169
((eq? (dotted-class-instance dottedname) '.temp) (list function-return (G-merge-states->state state function-state)))
173170
(else (list function-return (update-class-instance (dotted-class-instance dottedname) (extract-new-class-instance-state function-state) evaled-state))))))
@@ -187,13 +184,7 @@
187184
(else (eval-function-post-name-eval name args state state default-currentclass #t cfuncsinstance)))))
188185

189186

190-
(define delete-this2
191-
(lambda (arg) arg))
192-
;(trace delete-this2)
193-
(define delete-this
194-
(lambda (arg) arg))
195-
;(trace delete-this)
196-
187+
; Finds the highest rightmost variable in a chained dotted expression
197188
(define find-highest-var
198189
(lambda (dotexpr)
199190
(cond
@@ -207,19 +198,23 @@
207198
((eq? 'funcall (arglist-head dotexpr)) '.temp)
208199
(else (dotted-class-instance (arglist-dot dotexpr))))))
209200

201+
; Gets the case class a state is in
210202
(define get-base-class
211203
(lambda (state cfuncsinstance)
212204
(get-value-from-pair (G-value-lookup->value_state '.class state cfuncsinstance))))
205+
206+
; Gets the current class a state is in
213207
(define get-current-class
214208
(lambda (state cfuncsinstance)
215209
(cond
216210
((G-initialized? '.this state) (get-value-from-pair (G-value-lookup->value_state '.this state cfuncsinstance)))
217211
(else (get-value-from-pair (G-value-lookup->value_state '.class state cfuncsinstance))))))
218212

213+
; Gets a superclass for a current class in a state
219214
(define get-super-class
220215
(lambda (currentclass state)
221-
(cond
222-
((null? state) '())
216+
(cond
217+
((null? state) default-currentclass)
223218
((null? currentclass) default-currentclass)
224219
((declared-in-scope? (get-variable-section-state (get-top-scope state)) '.class)
225220
(cond
@@ -232,6 +227,7 @@
232227

233228
(define default-currentclass '())
234229

230+
; Evaluate the actual function after the name as been evaluated
235231
(define eval-function-post-name-eval
236232
(lambda (name args state function-state current-class preserve-current-class cfuncsinstance)
237233
(let* ([super-popped-state (G-add-empty-scope-to-state->state (G-push-stack-divider-to-state->state current-class

0 commit comments

Comments
 (0)