Function: ebnf-generate-zero-or-more
ebnf-generate-zero-or-more is a byte-compiled function defined in
ebnf2ps.el.gz.
Signature
(ebnf-generate-zero-or-more ZERO-OR-MORE)
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/ebnf2ps.el.gz
;; [zero-or-more width-fun dim-fun entry height width element separator]
(defun ebnf-generate-zero-or-more (zero-or-more)
(let* ((width (ebnf-node-width zero-or-more))
(node-list (ebnf-node-list zero-or-more))
(list-entry (ebnf-node-entry node-list))
(node-sep (ebnf-node-separator zero-or-more))
(entry (+ list-entry
ebnf-vertical-space
(if node-sep
(- (ebnf-node-height node-sep)
(ebnf-node-entry node-sep))
ebnf-basic-empty-height))))
(ps-output (ebnf-format-float entry
(+ (- (ebnf-node-height node-list)
list-entry)
ebnf-vertical-space)
width)
" ZM\n")
(ebnf-node-generation (ebnf-node-list zero-or-more))
(ebnf-vertical-movement entry)
(if (ebnf-node-separator zero-or-more)
(let ((ebnf-direction "L"))
(ebnf-node-generation (ebnf-node-separator zero-or-more)))
(ebnf-empty-alternative (- width
ebnf-horizontal-space
ebnf-basic-width-extra))))
(ps-output "EOS\n"))