/[slime]/slime/swank-backend.lisp
ViewVC logotype

Diff of /slime/swank-backend.lisp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.42 by mbaringer, Tue Apr 6 10:42:53 2004 UTC revision 1.43 by lgorrie, Wed Apr 14 18:50:36 2004 UTC
# Line 48  to execute the body if the backend doesn Line 48  to execute the body if the backend doesn
48  implementation.  implementation.
49    
50  Backends implement these functions using DEFIMPLEMENTATION."  Backends implement these functions using DEFIMPLEMENTATION."
51      (check-type documentation string "a documentation string")
52    (flet ((gen-default-impl ()    (flet ((gen-default-impl ()
53             (let ((received-args (gensym "ARGS-")))             (let ((received-args (gensym "ARGS-")))
54               `(defmethod no-applicable-method ((#:method               `(defmethod no-applicable-method ((#:method
# Line 162  If supplied, BUFFER and POSITION specify Line 163  If supplied, BUFFER and POSITION specify
163  Additionally, if POSITION is supplied, it must be added to source  Additionally, if POSITION is supplied, it must be added to source
164  positions reported in compiler conditions.")  positions reported in compiler conditions.")
165    
166  (definterface swank-compile-system (system-name)  (definterface operate-on-system (system-name operation-name &rest keyword-args)
167    "Compile and load SYSTEM-NAME, During compilation compiler    "Perform OPERATION-NAME on SYSTEM-NAME using ASDF.
168    conditions must be trapped and resignalled as  The KEYWORD-ARGS are passed on to the operation.
169    COMPILER-CONDITION ala compile-string-for-emacs."  Example:
170    \(operate-on-system \"SWANK\" \"COMPILE-OP\" :force t)"
171      (unless (member :asdf *features*)
172        (error "ASDF is not loaded."))
173    (with-compilation-hooks ()    (with-compilation-hooks ()
174      (cond ((member :asdf *features*)      (let ((operate (find-symbol "OPERATE" :asdf))
175             (let ((operate (find-symbol (string :operate) :asdf))            (operation (find-symbol operation-name :asdf)))
176                   (load-op (find-symbol (string :load-op) :asdf)))        (when (null operation)
177               (funcall operate load-op system-name)))          (error "Couldn't find ASDF operation ~S" operation-name))
178            (t (error "ASDF not loaded")))))        (apply operate operation system-name keyword-args))))
179    
180  (definterface swank-compile-file (filename load-p)  (definterface swank-compile-file (filename load-p)
181     "Compile FILENAME signalling COMPILE-CONDITIONs.     "Compile FILENAME signalling COMPILE-CONDITIONs.

Legend:
Removed from v.1.42  
changed lines
  Added in v.1.43

  ViewVC Help
Powered by ViewVC 1.1.5