mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-02 21:10:27 +02:00
45 lines
904 B
Scheme
45 lines
904 B
Scheme
(define-module (lang elisp primitives fns)
|
|
#:use-module (lang elisp internals set)
|
|
#:use-module (lang elisp internals fset)
|
|
#:use-module (lang elisp internals null))
|
|
|
|
(fset 'fset fset)
|
|
(fset 'defalias fset)
|
|
|
|
(fset 'apply elisp-apply)
|
|
|
|
(fset 'funcall
|
|
(lambda (function . args)
|
|
(elisp-apply function args)))
|
|
|
|
(fset 'interactive-p
|
|
(lambda ()
|
|
%nil))
|
|
|
|
(fset 'commandp
|
|
(lambda (sym)
|
|
(if (interactive-specification (fref sym)) #t %nil)))
|
|
|
|
(fset 'fboundp
|
|
(lambda (sym)
|
|
(->nil (variable? (symbol-fref sym)))))
|
|
|
|
(fset 'symbol-function fref/error-if-void)
|
|
|
|
(fset 'macroexpand macroexpand)
|
|
|
|
(fset 'subrp
|
|
(lambda (obj)
|
|
(->nil (not (not-subr? obj)))))
|
|
|
|
(fset 'byte-code-function-p
|
|
(lambda (object)
|
|
%nil))
|
|
|
|
(fset 'run-hooks
|
|
(lambda hooks
|
|
(for-each (lambda (hooksym)
|
|
(for-each (lambda (fn)
|
|
(elisp-apply fn '()))
|
|
(value hooksym #f)))
|
|
hooks)))
|