1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/epoc32/include/tools/stlport/bitset Wed Mar 31 12:33:34 2010 +0100
1.3 @@ -0,0 +1,63 @@
1.4 +/*
1.5 + * Copyright (c) 1998
1.6 + * Silicon Graphics Computer Systems, Inc.
1.7 + *
1.8 + * Copyright (c) 1999
1.9 + * Boris Fomitchev
1.10 + *
1.11 + * This material is provided "as is", with absolutely no warranty expressed
1.12 + * or implied. Any use is at your own risk.
1.13 + *
1.14 + * Permission to use or copy this software for any purpose is hereby granted
1.15 + * without fee, provided the above notices are retained on all copies.
1.16 + * Permission to modify the code and to distribute modified code is granted,
1.17 + * provided the above notices are retained, and a notice that the code was
1.18 + * modified is included with the above copyright notice.
1.19 + *
1.20 + */
1.21 +
1.22 +#ifndef _STLP_BITSET
1.23 +#define _STLP_BITSET
1.24 +
1.25 +// This implementation of bitset<> has a second template parameter,
1.26 +// _WordT, which defaults to unsigned long. *YOU SHOULD NOT USE
1.27 +// THIS FEATURE*. It is experimental, and it may be removed in
1.28 +// future releases.
1.29 +
1.30 +// A bitset of size N, using words of type _WordT, will have
1.31 +// N % (sizeof(_WordT) * CHAR_BIT) unused bits. (They are the high-
1.32 +// order bits in the highest word.) It is a class invariant
1.33 +// of class bitset<> that those unused bits are always zero.
1.34 +
1.35 +// Most of the actual code isn't contained in bitset<> itself, but in the
1.36 +// base class _Base_bitset. The base class works with whole words, not with
1.37 +// individual bits. This allows us to specialize _Base_bitset for the
1.38 +// important special case where the bitset is only a single word.
1.39 +
1.40 +// The C++ standard does not define the precise semantics of operator[].
1.41 +// In this implementation the const version of operator[] is equivalent
1.42 +// to test(), except that it does no range checking. The non-const version
1.43 +// returns a reference to a bit, again without doing any range checking.
1.44 +
1.45 +#ifndef _STLP_OUTERMOST_HEADER_ID
1.46 +# define _STLP_OUTERMOST_HEADER_ID 0x2
1.47 +# include <stl/_prolog.h>
1.48 +#endif
1.49 +
1.50 +#ifdef _STLP_PRAGMA_ONCE
1.51 +# pragma once
1.52 +#endif
1.53 +
1.54 +#include <stl/_bitset.h>
1.55 +
1.56 +#if (_STLP_OUTERMOST_HEADER_ID == 0x2 )
1.57 +# include <stl/_epilog.h>
1.58 +# undef _STLP_OUTERMOST_HEADER_ID
1.59 +#endif
1.60 +
1.61 +#endif /* _STLP_BITSET */
1.62 +
1.63 +// Local Variables:
1.64 +// mode:C++
1.65 +// End:
1.66 +