Next: copy-list, Previous: subst; subst-if; subst-if-not; nsubst; nsubst-if; nsubst-if-not, Up: Conses
tree-1—a tree.
tree-2—a tree.
test—a designator for a function of two arguments that returns a generalized boolean.
test-not—a designator for a function of two arguments that returns a generalized boolean.
generalized-boolean—a generalized boolean.
tree-equal
tests whether two trees are of the same shape
and have the same leaves.
tree-equal
returns true if tree-1 and tree-2 are
both atoms and satisfy the test,
or if they are both conses and
the car of tree-1 is tree-equal
to
the car of tree-2 and
the cdr of tree-1 is tree-equal
to
the cdr of tree-2.
Otherwise, tree-equal
returns false.
tree-equal
recursively compares conses but not any
other objects that have components.
The first argument to the :test or :test-not function is tree-1 or a car or cdr of tree-1; the second argument is tree-2 or a car or cdr of tree-2.
(setq tree1 '(1 (1 2)) tree2 '(1 (1 2))) → (1 (1 2)) (tree-equal tree1 tree2) → true (eql tree1 tree2) → false (setq tree1 '('a ('b 'c)) tree2 '('a ('b 'c))) → ('a ('b 'c)) → ((QUOTE A) ((QUOTE B) (QUOTE C))) (tree-equal tree1 tree2 :test 'eq) → true
The consequences are undefined if both tree-1 and tree-2 are circular.
equal, Section 3.6 (Traversal Rules and Side Effects)
The :test-not parameter is deprecated.