Function: rng-c-prepare-define
rng-c-prepare-define is a byte-compiled function defined in
rng-cmpct.el.gz.
Signature
(rng-c-prepare-define NAME COMBINE IN-INCLUDE)
Source Code
;; Defined in /usr/src/emacs/lisp/nxml/rng-cmpct.el.gz
(defun rng-c-prepare-define (name combine in-include)
(let* ((def (rng-c-lookup-create name rng-c-current-grammar))
(about (car def))
(overridden (aref about rng-c-about-override-slot)))
(and in-include
(setq rng-c-overrides (cons (cons name def) rng-c-overrides)))
(cond (overridden (and (eq overridden 'require)
(aset about rng-c-about-override-slot t))
nil)
(t (setq combine (rng-c-merge-combine def combine name))
(and (rng-ref-get (cdr def))
(not combine)
(rng-c-error "Duplicate definition of %s" name))
def))))