comparison include/llvm/Support/MemoryBuffer.h @ 100:7d135dc70f03 LLVM 3.9

LLVM 3.9
author Miyagi Mitsuki <e135756@ie.u-ryukyu.ac.jp>
date Tue, 26 Jan 2016 22:53:40 +0900
parents afa8332a0e37
children 1172e4bd9c6f
comparison
equal deleted inserted replaced
96:6418606d0ead 100:7d135dc70f03
12 //===----------------------------------------------------------------------===// 12 //===----------------------------------------------------------------------===//
13 13
14 #ifndef LLVM_SUPPORT_MEMORYBUFFER_H 14 #ifndef LLVM_SUPPORT_MEMORYBUFFER_H
15 #define LLVM_SUPPORT_MEMORYBUFFER_H 15 #define LLVM_SUPPORT_MEMORYBUFFER_H
16 16
17 #include "llvm-c/Support.h"
18 #include "llvm/ADT/Twine.h" 17 #include "llvm/ADT/Twine.h"
19 #include "llvm/Support/CBindingWrapping.h" 18 #include "llvm/Support/CBindingWrapping.h"
20 #include "llvm/Support/DataTypes.h" 19 #include "llvm/Support/DataTypes.h"
21 #include "llvm/Support/ErrorOr.h" 20 #include "llvm/Support/ErrorOr.h"
22 #include <memory> 21 #include <memory>
120 static ErrorOr<std::unique_ptr<MemoryBuffer>> getSTDIN(); 119 static ErrorOr<std::unique_ptr<MemoryBuffer>> getSTDIN();
121 120
122 /// Open the specified file as a MemoryBuffer, or open stdin if the Filename 121 /// Open the specified file as a MemoryBuffer, or open stdin if the Filename
123 /// is "-". 122 /// is "-".
124 static ErrorOr<std::unique_ptr<MemoryBuffer>> 123 static ErrorOr<std::unique_ptr<MemoryBuffer>>
125 getFileOrSTDIN(const Twine &Filename, int64_t FileSize = -1); 124 getFileOrSTDIN(const Twine &Filename, int64_t FileSize = -1,
125 bool RequiresNullTerminator = true);
126 126
127 /// Map a subrange of the specified file as a MemoryBuffer. 127 /// Map a subrange of the specified file as a MemoryBuffer.
128 static ErrorOr<std::unique_ptr<MemoryBuffer>> 128 static ErrorOr<std::unique_ptr<MemoryBuffer>>
129 getFileSlice(const Twine &Filename, uint64_t MapSize, uint64_t Offset); 129 getFileSlice(const Twine &Filename, uint64_t MapSize, uint64_t Offset);
130 130
149 StringRef Buffer; 149 StringRef Buffer;
150 StringRef Identifier; 150 StringRef Identifier;
151 151
152 public: 152 public:
153 MemoryBufferRef() {} 153 MemoryBufferRef() {}
154 MemoryBufferRef(MemoryBuffer& Buffer)
155 : Buffer(Buffer.getBuffer()), Identifier(Buffer.getBufferIdentifier()) {}
154 MemoryBufferRef(StringRef Buffer, StringRef Identifier) 156 MemoryBufferRef(StringRef Buffer, StringRef Identifier)
155 : Buffer(Buffer), Identifier(Identifier) {} 157 : Buffer(Buffer), Identifier(Identifier) {}
156 158
157 StringRef getBuffer() const { return Buffer; } 159 StringRef getBuffer() const { return Buffer; }
158 160