如何调用可能定义或未定义的elisp函数?

时间:2015-08-28 20:54:18

标签: elisp

我尝试过使用functionp和fboundp,我想知道它们有什么区别以及它们如何用于调用函数。

(functionp OBJECT) - 如果OBJECT是一个函数,则为非零。

(fboundp SYMBOL) - 如果SYMBOL的函数定义无效,则返回。

例如,我试图这样做:

(if (python-shell-get-buffer)
    .... 
    ....

但是在run-python运行之前,python-shell-get-buffer没有定义。
如果我只是试着调用它,在它定义之前,我得到:

  

符号的函数定义是void:python-shell-get-buffer

我尝试过使用

(if (and (fboundp python-shell-get-buffer) (python-shell-get-buffer))

(if (and (functionp python-shell-get-buffer) (python-shell-get-buffer))

但他们也会导致

  

符号的变量值为void:python-shell-get-buffer

如何调用可能定义或未定义的函数?

0 个答案:

没有答案