* of any interest to the user of the library. */
/*
- * GiNaC Copyright (C) 1999-2006 Johannes Gutenberg University Mainz, Germany
+ * GiNaC Copyright (C) 1999-2007 Johannes Gutenberg University Mainz, Germany
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
unsigned log2(unsigned n);
+/** Rotate bits of unsigned value by one bit to the left.
+ * This can be necesary if the user wants to define its own hashes. */
+inline unsigned rotate_left(unsigned n)
+{
+ return (n & 0x80000000U) ? (n << 1 | 0x00000001U) : (n << 1);
+}
+
/** Compare two pointers (just to establish some sort of canonical order).
* @return -1, 0, or 1 */
template <class T>
return 0;
}
-/** Rotate bits of unsigned value by one bit to the left. */
-inline unsigned rotate_left(unsigned n)
-{
- return (n & 0x80000000U) ? (n << 1 | 0x00000001U) : (n << 1);
-}
-
#if SIZEOF_VOID_P == SIZEOF_INT
typedef unsigned int p_int;
#elif SIZEOF_VOID_P == SIZEOF_LONG