Don't own the buffer in object::Binary.
[oota-llvm.git] / include / llvm / Object / Archive.h
index d6f9ab06549cf20713e65635324bd65e538f301a..5526dd13ba64385dd3598d33bba0d59d0bb165d3 100644 (file)
@@ -89,8 +89,7 @@ public:
       return StringRef(Data.data() + StartOfFile, getSize());
     }
 
-    ErrorOr<std::unique_ptr<MemoryBuffer>>
-    getMemoryBuffer(bool FullPath = false) const;
+    ErrorOr<MemoryBufferRef> getMemoryBufferRef() const;
 
     ErrorOr<std::unique_ptr<Binary>>
     getAsBinary(LLVMContext *Context = nullptr) const;
@@ -164,9 +163,8 @@ public:
     }
   };
 
-  Archive(std::unique_ptr<MemoryBuffer> Source, std::error_code &EC);
-  static ErrorOr<std::unique_ptr<Archive>>
-  create(std::unique_ptr<MemoryBuffer> Source);
+  Archive(MemoryBufferRef Source, std::error_code &EC);
+  static ErrorOr<std::unique_ptr<Archive>> create(MemoryBufferRef Source);
 
   enum Kind {
     K_GNU,