
Author: abaine Date: Tue Jul 10 22:45:48 2007 New Revision: 77 Modified: trunk/funds/src/trees/constructors.lisp Log: make-leaf functions now all return singletons. Modified: trunk/funds/src/trees/constructors.lisp ============================================================================== --- trunk/funds/src/trees/constructors.lisp (original) +++ trunk/funds/src/trees/constructors.lisp Tue Jul 10 22:45:48 2007 @@ -17,11 +17,18 @@ (in-package :funds) +(defconstant +bt-leaf+ (make-instance 'bt-leaf)) +(defconstant +avl-leaf+ (make-instance 'avl-leaf)) +(defconstant +heap-leaf+ (make-instance 'heap-leaf)) + (defun make-bt-leaf () - (make-instance 'bt-leaf)) + +bt-leaf+) (defun make-avl-leaf () - (make-instance 'avl-leaf)) + +avl-leaf+) + +(defun make-heap-leaf () + +heap-leaf+) (defun make-binary-tree () (make-bt-leaf)) @@ -37,8 +44,7 @@ :height (parent-height left right)) (make-avl-leaf))) -(defun make-heap-leaf () - (make-instance 'heap-leaf)) + (defun make-heap (&key (priority 0 p-p) value (left (make-heap-leaf)) (right (make-heap-leaf)))