From ac2066b6f439b2497e761fbd99c9675db0b03bbd Mon Sep 17 00:00:00 2001 From: Jose Antonio Ortega Ruiz Date: Tue, 22 Sep 2009 22:43:28 +0200 Subject: New implementation registration mechanism, for the elisp side of things. Implementations must invoke define-geiser-implementation with an appropriate set of methods. Simple inheritance is supported. Each geiser module defines and registers the method names it uses. --- elisp/geiser-plt.el | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'elisp/geiser-plt.el') diff --git a/elisp/geiser-plt.el b/elisp/geiser-plt.el index 86073e5..aadca41 100644 --- a/elisp/geiser-plt.el +++ b/elisp/geiser-plt.el @@ -160,6 +160,21 @@ This function uses `geiser-plt-init-file' if it exists." (geiser-plt--explicit-module) (string-equal (file-name-extension (or (buffer-file-name) "")) "ss"))) + +;;; Implementation definition: + +(define-geiser-implementation plt + (binary geiser-plt-binary) + (arglist geiser-plt-parameters) + (startup) + (prompt-regexp geiser-plt-prompt-regexp) + (marshall-procedure geiser-plt-geiser-procedure) + (find-module geiser-plt-get-module) + (find-symbol-begin geiser-plt-symbol-begin) + (display-error geiser-plt-display-error) + (display-help geiser-plt-external-help) + (check-buffer geiser-plt-guess)) + (provide 'geiser-plt) ;;; geiser-plt.el ends here -- cgit v1.2.3