;;;--------------------------------------------------------------------------
;;; Code fragments.
-(export '(c-fragment c-fragment-text))
-(defclass c-fragment ()
- ((location :initarg :location :type file-location :reader file-location)
- (text :initarg :text :type string :reader c-fragment-text))
- (:documentation
- "Represents a fragment of C code to be written to an output file.
-
- A C fragment is aware of its original location, and will bear proper
- `#line' markers when written out."))
-
(defun output-c-excursion (stream location func)
"Invoke FUNC surrounding it by writing #line markers to STREAM.