1 ;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10 -*-
2 ;;;; *************************************************************************
3 ;;;; FILE IDENTIFICATION
6 ;;;; Purpose: Hash functions for KMRCL package
7 ;;;; Programmer: Kevin M. Rosenberg
8 ;;;; Date Started: Apr 2000
10 ;;;; This file, part of KMRCL, is Copyright (c) 2002-2011 by Kevin M. Rosenberg
12 ;;;; KMRCL users are granted the rights to distribute and use this software
13 ;;;; as governed by the terms of the Lisp Lesser GNU Public License
14 ;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL.
15 ;;;; *************************************************************************
22 (defun print-hash (h &key (stream *standard-output*)
23 key-transform-fn value-transform-fn
24 (prefix "") (divider " -> ") (terminator "~%"))
25 (maphash #'(lambda (k v)
26 (format stream "~A~S~A~S"
29 (funcall key-transform-fn k)
32 (if value-transform-fn
33 (funcall value-transform-fn v)
35 (when terminator (format stream terminator)))