diff options
Diffstat (limited to 'src/util/bitvector.h')
-rw-r--r-- | src/util/bitvector.h | 40 |
1 files changed, 18 insertions, 22 deletions
diff --git a/src/util/bitvector.h b/src/util/bitvector.h index 5da7667b0..ab6d8b030 100644 --- a/src/util/bitvector.h +++ b/src/util/bitvector.h @@ -27,7 +27,7 @@ namespace CVC4 { -class CVC4_PUBLIC BitVector +class BitVector { public: BitVector(unsigned size, const Integer& val) @@ -282,7 +282,7 @@ class CVC4_PUBLIC BitVector * operation maps bit-vectors to bit-vector of size <code>high - low + 1</code> * by taking the bits at indices <code>high ... low</code> */ -struct CVC4_PUBLIC BitVectorExtract +struct BitVectorExtract { /** The high bit of the range for this extract */ unsigned d_high; @@ -300,7 +300,7 @@ struct CVC4_PUBLIC BitVectorExtract /** * The structure representing the extraction of one Boolean bit. */ -struct CVC4_PUBLIC BitVectorBitOf +struct BitVectorBitOf { /** The index of the bit */ unsigned d_bitIndex; @@ -312,21 +312,21 @@ struct CVC4_PUBLIC BitVectorBitOf } }; /* struct BitVectorBitOf */ -struct CVC4_PUBLIC BitVectorSize +struct BitVectorSize { unsigned d_size; BitVectorSize(unsigned size) : d_size(size) {} operator unsigned() const { return d_size; } }; /* struct BitVectorSize */ -struct CVC4_PUBLIC BitVectorRepeat +struct BitVectorRepeat { unsigned d_repeatAmount; BitVectorRepeat(unsigned repeatAmount) : d_repeatAmount(repeatAmount) {} operator unsigned() const { return d_repeatAmount; } }; /* struct BitVectorRepeat */ -struct CVC4_PUBLIC BitVectorZeroExtend +struct BitVectorZeroExtend { unsigned d_zeroExtendAmount; BitVectorZeroExtend(unsigned zeroExtendAmount) @@ -336,7 +336,7 @@ struct CVC4_PUBLIC BitVectorZeroExtend operator unsigned() const { return d_zeroExtendAmount; } }; /* struct BitVectorZeroExtend */ -struct CVC4_PUBLIC BitVectorSignExtend +struct BitVectorSignExtend { unsigned d_signExtendAmount; BitVectorSignExtend(unsigned signExtendAmount) @@ -346,7 +346,7 @@ struct CVC4_PUBLIC BitVectorSignExtend operator unsigned() const { return d_signExtendAmount; } }; /* struct BitVectorSignExtend */ -struct CVC4_PUBLIC BitVectorRotateLeft +struct BitVectorRotateLeft { unsigned d_rotateLeftAmount; BitVectorRotateLeft(unsigned rotateLeftAmount) @@ -356,7 +356,7 @@ struct CVC4_PUBLIC BitVectorRotateLeft operator unsigned() const { return d_rotateLeftAmount; } }; /* struct BitVectorRotateLeft */ -struct CVC4_PUBLIC BitVectorRotateRight +struct BitVectorRotateRight { unsigned d_rotateRightAmount; BitVectorRotateRight(unsigned rotateRightAmount) @@ -366,7 +366,7 @@ struct CVC4_PUBLIC BitVectorRotateRight operator unsigned() const { return d_rotateRightAmount; } }; /* struct BitVectorRotateRight */ -struct CVC4_PUBLIC IntToBitVector +struct IntToBitVector { unsigned d_size; IntToBitVector(unsigned size) : d_size(size) {} @@ -380,7 +380,7 @@ struct CVC4_PUBLIC IntToBitVector /* * Hash function for the BitVector constants. */ -struct CVC4_PUBLIC BitVectorHashFunction +struct BitVectorHashFunction { inline size_t operator()(const BitVector& bv) const { return bv.hash(); } }; /* struct BitVectorHashFunction */ @@ -388,7 +388,7 @@ struct CVC4_PUBLIC BitVectorHashFunction /** * Hash function for the BitVectorExtract objects. */ -struct CVC4_PUBLIC BitVectorExtractHashFunction +struct BitVectorExtractHashFunction { size_t operator()(const BitVectorExtract& extract) const { @@ -401,13 +401,13 @@ struct CVC4_PUBLIC BitVectorExtractHashFunction /** * Hash function for the BitVectorBitOf objects. */ -struct CVC4_PUBLIC BitVectorBitOfHashFunction +struct BitVectorBitOfHashFunction { size_t operator()(const BitVectorBitOf& b) const { return b.d_bitIndex; } }; /* struct BitVectorBitOfHashFunction */ template <typename T> -struct CVC4_PUBLIC UnsignedHashFunction +struct UnsignedHashFunction { inline size_t operator()(const T& x) const { return (size_t)x; } }; /* struct UnsignedHashFunction */ @@ -416,29 +416,25 @@ struct CVC4_PUBLIC UnsignedHashFunction ** Output stream * ----------------------------------------------------------------------- */ -inline std::ostream& operator<<(std::ostream& os, - const BitVector& bv) CVC4_PUBLIC; +inline std::ostream& operator<<(std::ostream& os, const BitVector& bv); inline std::ostream& operator<<(std::ostream& os, const BitVector& bv) { return os << bv.toString(); } -inline std::ostream& operator<<(std::ostream& os, - const BitVectorExtract& bv) CVC4_PUBLIC; +inline std::ostream& operator<<(std::ostream& os, const BitVectorExtract& bv); inline std::ostream& operator<<(std::ostream& os, const BitVectorExtract& bv) { return os << "[" << bv.d_high << ":" << bv.d_low << "]"; } -inline std::ostream& operator<<(std::ostream& os, - const BitVectorBitOf& bv) CVC4_PUBLIC; +inline std::ostream& operator<<(std::ostream& os, const BitVectorBitOf& bv); inline std::ostream& operator<<(std::ostream& os, const BitVectorBitOf& bv) { return os << "[" << bv.d_bitIndex << "]"; } -inline std::ostream& operator<<(std::ostream& os, - const IntToBitVector& bv) CVC4_PUBLIC; +inline std::ostream& operator<<(std::ostream& os, const IntToBitVector& bv); inline std::ostream& operator<<(std::ostream& os, const IntToBitVector& bv) { return os << "[" << bv.d_size << "]"; |