[llvm] r183043 - Use just a ArrayRef<uint8_t> to store both hex string and binary data.
Rafael Espindola
rafael.espindola at gmail.com
Fri May 31 14:03:52 PDT 2013
Author: rafael
Date: Fri May 31 16:03:51 2013
New Revision: 183043
URL: http://llvm.org/viewvc/llvm-project?rev=183043&view=rev
Log:
Use just a ArrayRef<uint8_t> to store both hex string and binary data.
Modified:
llvm/trunk/include/llvm/Object/COFFYAML.h
Modified: llvm/trunk/include/llvm/Object/COFFYAML.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Object/COFFYAML.h?rev=183043&r1=183042&r2=183043&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Object/COFFYAML.h (original)
+++ llvm/trunk/include/llvm/Object/COFFYAML.h Fri May 31 16:03:51 2013
@@ -40,21 +40,21 @@ namespace COFFYAML {
/// string. Using this avoid having to allocate temporary strings.
/// FIXME: not COFF specific.
class BinaryRef {
- ArrayRef<uint8_t> BinaryData;
- StringRef HexData;
+ ArrayRef<uint8_t> Data;
bool isBinary;
public:
- BinaryRef(ArrayRef<uint8_t> BinaryData)
- : BinaryData(BinaryData), isBinary(true) {}
- BinaryRef(StringRef HexData) : HexData(HexData), isBinary(false) {}
+ BinaryRef(ArrayRef<uint8_t> Data) : Data(Data), isBinary(true) {}
+ BinaryRef(StringRef Data)
+ : Data(reinterpret_cast<const uint8_t *>(Data.data()), Data.size()),
+ isBinary(false) {}
BinaryRef() : isBinary(false) {}
StringRef getHex() const {
assert(!isBinary);
- return HexData;
+ return StringRef(reinterpret_cast<const char*>(Data.data()), Data.size());
}
ArrayRef<uint8_t> getBinary() const {
assert(isBinary);
- return BinaryData;
+ return Data;
}
};
More information about the llvm-commits
mailing list