Function: ebrowse-push-position

ebrowse-push-position is a byte-compiled function defined in ebrowse.el.gz.

Signature

(ebrowse-push-position MARKER INFO &optional TARGET)

Documentation

Push current position on position stack.

MARKER is the marker to remember as position. INFO is a list (CLASS FUNC MEMBER) specifying what we jumped to. TARGET non-nil means we performed a jump. Positions in buffers that have no file names are not saved.

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/ebrowse.el.gz
(defun ebrowse-push-position (marker info &optional target)
  "Push current position on position stack.
MARKER is the marker to remember as position.
INFO is a list (CLASS FUNC MEMBER) specifying what we jumped to.
TARGET non-nil means we performed a jump.
Positions in buffers that have no file names are not saved."
  (when (buffer-file-name (marker-buffer marker))
    (let ((too-much (- (length ebrowse-position-stack)
		       ebrowse-max-positions)))
      ;; Do not let the stack grow to infinity.
      (when (cl-plusp too-much)
	(setq ebrowse-position-stack
	      (butlast ebrowse-position-stack too-much)))
      ;; Push the position.
      (push (make-ebrowse-position
	     :file-name (buffer-file-name (marker-buffer marker))
	     :point (marker-position marker)
	     :target target
	     :info info)
	    ebrowse-position-stack))))