diff options
| author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-09-26 03:17:55 +0200 | 
|---|---|---|
| committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-09-26 03:17:55 +0200 | 
| commit | 050b9e11f652673d4021b6db6a28193dafcdef6c (patch) | |
| tree | 238c29e5306269b3071070ebc6d3a23316e0c504 | |
| parent | 4f51508ab0f7882dd8f0f80ae53fa238eacd5278 (diff) | |
| download | geiser-050b9e11f652673d4021b6db6a28193dafcdef6c.tar.gz geiser-050b9e11f652673d4021b6db6a28193dafcdef6c.tar.bz2 | |
New implementation method/variable: unsupported Geiser procedures.
| -rw-r--r-- | elisp/geiser-eval.el | 13 | 
1 files changed, 12 insertions, 1 deletions
| diff --git a/elisp/geiser-eval.el b/elisp/geiser-eval.el index c7b7d2c..f4ac95d 100644 --- a/elisp/geiser-eval.el +++ b/elisp/geiser-eval.el @@ -36,7 +36,6 @@ value.")         (funcall geiser-eval--get-module-function module)))  (defvar geiser-eval--geiser-procedure-function nil) -  (geiser-impl--register-local-method   'geiser-eval--geiser-procedure-function 'marshall-procedure 'identity   "Function to translate a bare procedure symbol to one executable @@ -44,7 +43,19 @@ in the Scheme context. Return NULL for unsupported ones; at the  very least, EVAL, COMPILE, LOAD-FILE and COMPILE-FILE should be  supported.") +(defvar geiser-eval--unsupported nil) +(geiser-impl--register-local-variable + 'geiser-eval--unsupported 'unsupported-procedures nil + "A list, or function returning a list, of the Geiser procedures +not implemented by this Scheme implementation. Possible values +include macroexpand, completions, module-completions, find-file, +symbol-location, module-location, symbol-documentation, +module-exports, autodoc, callers, callees and generic-methods.") +  (defsubst geiser-eval--form (proc) +  (when (and geiser-eval--unsupported (memq proc geiser-eval--unsupported)) +    (error "Sorry, the %s scheme implementation does not support Geiser's %s" +           geiser-impl--implementation proc))    (funcall geiser-eval--geiser-procedure-function proc)) | 
