【发布时间】:2012-01-05 23:16:01
【问题描述】:
在 elisp 中实现多态回调的惯用方式是什么?
具体来说,假设我有一个次要模式,其中一个函数执行某个操作,然后调用另一个函数。根据当前缓冲区是包含 C++ 文件还是 Java 文件,第二个函数应该有不同的实现。
或者,假设我想重载变量而不是函数。例如,我想调用一些外部可执行文件,传递给它的参数之一根据当前缓冲区是 C++ 文件还是 Java 文件而有所不同。我希望能够在通用函数中构造命令行并根据缓冲区的内容替换一个参数。 make-variable-buffer-local 是正确的方法吗?最初应该在什么时候(以及通过哪种机制)设置这些局部变量?
【问题讨论】:
标签: emacs polymorphism elisp overloading