Should be in a nice column, rather than marching across to the right
margin like a mad thing.
decls body))
(definst if (stream :export t) (#1=#:cond conseq &optional alt)
decls body))
(definst if (stream :export t) (#1=#:cond conseq &optional alt)
- (format-compound-statement (stream conseq alt)
- (format stream "if (~A)" #1#))
- (when alt
- (format-compound-statement (stream alt)
- (write-string "else" stream))))
+ (let ((stmt "if"))
+ (loop (format-compound-statement (stream conseq (if alt t nil))
+ (format stream "~A (~A)" stmt #1#))
+ (typecase alt
+ (null (return))
+ (if-inst (setf stmt "else if"
+ #1# (inst-cond alt)
+ conseq (inst-conseq alt)
+ alt (inst-alt alt)))
+ (t (format-compound-statement (stream alt)
+ (format stream "else"))
+ (return))))))
(definst while (stream :export t) (#1=#:cond body)
(format-compound-statement (stream body)
(definst while (stream :export t) (#1=#:cond body)
(format-compound-statement (stream body)