# HG changeset patch
# User Robert L. Miller <rlm@rlmiller.org>
# Date 1217364116 25200
# Node ID a01f7f19d0d48acdcc60511f47908653d05e7eae
# Parent  63bfd503aaba9c0e6a4046ddb88e1566e387733a
Split up bitset.pxi to allow use in pxd files.

diff -r 63bfd503aaba -r a01f7f19d0d4 sage/groups/perm_gps/partn_ref/tree_traversal.pxd
--- a/sage/groups/perm_gps/partn_ref/tree_traversal.pxd	Mon Jul 21 17:16:23 2008 -0700
+++ b/sage/groups/perm_gps/partn_ref/tree_traversal.pxd	Tue Jul 29 13:41:56 2008 -0700
@@ -8,6 +8,8 @@
 
 include '../../../ext/cdefs.pxi'
 include '../../../ext/stdsage.pxi'
+include '../../../misc/bitset_pxd.pxi'
+
 from sage.rings.integer cimport Integer
 
 cdef struct OrbitPartition:
@@ -50,7 +52,7 @@ cdef inline bint PS_is_fixed(PartitionSt
 cdef inline bint PS_is_fixed(PartitionStack *, int)
 cdef inline int PS_clear(PartitionStack *)
 cdef inline int PS_split_point(PartitionStack *, int)
-#cdef inline int PS_first_smallest(PartitionStack *, bitset_t)
+cdef inline int PS_first_smallest(PartitionStack *, bitset_t)
 cdef inline int PS_get_perm_from(PartitionStack *, PartitionStack *, int *)
 
 cdef inline int split_point_and_refine(PartitionStack *, int, object,
diff -r 63bfd503aaba -r a01f7f19d0d4 sage/misc/bitset.pxi
--- a/sage/misc/bitset.pxi	Mon Jul 21 17:16:23 2008 -0700
+++ b/sage/misc/bitset.pxi	Tue Jul 29 13:41:56 2008 -0700
@@ -16,25 +16,6 @@
 
 
 # This is a .pxi file so that one can inline functions. Doctests in misc_c. 
-
-include "../ext/stdsage.pxi"
-
-cdef extern from *:
-    void *memset(void *, int, size_t)
-    void *memcpy(void *, void *, size_t)
-    int memcmp(void *, void *, size_t)
-    size_t strlen(char *)
-
-    # constant literals
-    int index_shift "(sizeof(unsigned long)==8 ? 6 : 5)"
-    unsigned long offset_mask "(sizeof(unsigned long)==8 ? 0x3F : 0x1F)"
-    
-cdef struct bitset_s:
-    long size
-    long limbs
-    unsigned long *bits
-        
-ctypedef bitset_s bitset_t[1]
 
 #############################################################################
 # Bitset Initalization
diff -r 63bfd503aaba -r a01f7f19d0d4 sage/misc/bitset_pxd.pxi
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/sage/misc/bitset_pxd.pxi	Tue Jul 29 13:41:56 2008 -0700
@@ -0,0 +1,38 @@
+#*****************************************************************************
+#     Copyright (C) 2008 Robert Bradshaw <robertwb@math.washington.edu>
+#
+#  Distributed under the terms of the GNU General Public License (GPL)
+#
+#    This code is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#    General Public License for more details.
+#
+#  The full text of the GPL is available at:
+#
+#                  http://www.gnu.org/licenses/
+#*****************************************************************************
+
+
+
+# This is a .pxi file so that one can inline functions. Doctests in misc_c. 
+
+include "../ext/stdsage.pxi"
+
+cdef extern from *:
+    void *memset(void *, int, size_t)
+    void *memcpy(void *, void *, size_t)
+    int memcmp(void *, void *, size_t)
+    size_t strlen(char *)
+
+    # constant literals
+    int index_shift "(sizeof(unsigned long)==8 ? 6 : 5)"
+    unsigned long offset_mask "(sizeof(unsigned long)==8 ? 0x3F : 0x1F)"
+    
+cdef struct bitset_s:
+    long size
+    long limbs
+    unsigned long *bits
+        
+ctypedef bitset_s bitset_t[1]
+
diff -r 63bfd503aaba -r a01f7f19d0d4 sage/misc/misc_c.pyx
--- a/sage/misc/misc_c.pyx	Mon Jul 21 17:16:23 2008 -0700
+++ b/sage/misc/misc_c.pyx	Tue Jul 29 13:41:56 2008 -0700
@@ -277,6 +277,7 @@ class NonAssociative:
 # Bitset Testing
 #############################################################################
 
+include "bitset_pxd.pxi"
 include "bitset.pxi"
 
 def test_bitset(py_a, py_b, long n):
