From: Rafael Espindola Date: Fri, 31 May 2013 21:03:51 +0000 (+0000) Subject: Use just a ArrayRef to store both hex string and binary data. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=e17388fd34a12dd0ecb8e347645b945db91d90a7;p=oota-llvm.git Use just a ArrayRef to store both hex string and binary data. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183043 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Object/COFFYAML.h b/include/llvm/Object/COFFYAML.h index 25c4601a972..4c20260222f 100644 --- a/include/llvm/Object/COFFYAML.h +++ b/include/llvm/Object/COFFYAML.h @@ -40,21 +40,21 @@ namespace COFFYAML { /// string. Using this avoid having to allocate temporary strings. /// FIXME: not COFF specific. class BinaryRef { - ArrayRef BinaryData; - StringRef HexData; + ArrayRef Data; bool isBinary; public: - BinaryRef(ArrayRef BinaryData) - : BinaryData(BinaryData), isBinary(true) {} - BinaryRef(StringRef HexData) : HexData(HexData), isBinary(false) {} + BinaryRef(ArrayRef Data) : Data(Data), isBinary(true) {} + BinaryRef(StringRef Data) + : Data(reinterpret_cast(Data.data()), Data.size()), + isBinary(false) {} BinaryRef() : isBinary(false) {} StringRef getHex() const { assert(!isBinary); - return HexData; + return StringRef(reinterpret_cast(Data.data()), Data.size()); } ArrayRef getBinary() const { assert(isBinary); - return BinaryData; + return Data; } };