1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-28 14:00:31 +02:00

symbol default value procedures

(Best-ability ChangeLog annotation added by Christine Lemmer-Webber.)

* module/language/elisp/runtime.scm:
  (symbol-default-bound?, symbol-default-value, set-symbol-default-value!):
  New procedure aliases.  Export their symbols.
  (emacs!): Update to accept new parameters dref, dset, dboundp.
This commit is contained in:
Robin Templeton 2014-06-24 00:01:56 -04:00 committed by Christine Lemmer-Webber
parent 1099c7c6b6
commit 534211afac
No known key found for this signature in database
GPG key ID: 4BC025925FF8F4D3

View file

@ -37,6 +37,9 @@
set-symbol-plist!
symbol-bound?
symbol-fbound?
symbol-default-bound?
symbol-default-value
set-symbol-default-value!
bind-symbol
makunbound!
fmakunbound!
@ -193,6 +196,12 @@
(dynamic-bound? (variable-ref var))
#t)))))
(define symbol-default-bound? symbol-bound?)
(define symbol-default-value symbol-value)
(define set-symbol-default-value! set-symbol-value!)
(define (symbol-fbound? symbol)
(set! symbol (schemify symbol))
(and
@ -225,10 +234,13 @@
(vector-set! (symbol-desc sym) 3 1)
#nil)
(define (emacs! ref set boundp bind)
(define (emacs! ref set boundp dref dset dboundp bind)
(set! symbol-value ref)
(set! set-symbol-value! set)
(set! symbol-bound? boundp)
(set! symbol-default-value dref)
(set! set-symbol-default-value! dset)
(set! symbol-default-bound? dboundp)
(set! bind-symbol bind)
(set! lexical-binding? (lambda () (symbol-value 'lexical-binding)))
(set! set-lexical-binding-mode (lambda (x) (set-symbol-value! 'lexical-binding x))))