insert-buffer
FunctionThe body of the insert-buffer
function has two major parts: an
or
expression and a let
expression. The purpose of the
or
expression is to ensure that the argument buffer
is
bound to a buffer and not just the name of a buffer. The body of the
let
expression contains the code which copies the other buffer
into the current buffer.
In outline, the two expressions fit into the insert-buffer
function like this:
(defun insert-buffer (buffer) "documentation…" (interactive "*bInsert buffer: ") (or … …
(let (varlist)
body-of-let
… )
To understand how the or
expression ensures that the argument
buffer
is bound to a buffer and not to the name of a buffer, it
is first necessary to understand the or
function.
Before doing this, let me rewrite this part of the function using
if
so that you can see what is done in a manner that will be familiar.