1//===- MemoryBufferRef.h - Memory Buffer Reference --------------*- C++ -*-===//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7//===----------------------------------------------------------------------===//
9// This file defines the MemoryBuffer interface.
11//===----------------------------------------------------------------------===//
13#ifndef LLVM_SUPPORT_MEMORYBUFFERREF_H
14#define LLVM_SUPPORT_MEMORYBUFFERREF_H
31 : Buffer(Buffer), Identifier(Identifier) {}
40 /// Check pointer identity (not value) of identifier and data.
43 return LHS.Buffer.begin() ==
RHS.Buffer.begin() &&
44 LHS.Buffer.end() ==
RHS.Buffer.end() &&
45 LHS.Identifier.begin() ==
RHS.Identifier.begin() &&
46 LHS.Identifier.end() ==
RHS.Identifier.end();
57#endif // LLVM_SUPPORT_MEMORYBUFFERREF_H
MemoryBufferRef(StringRef Buffer, StringRef Identifier)
size_t getBufferSize() const
StringRef getBufferIdentifier() const
const char * getBufferStart() const
StringRef getBuffer() const
friend bool operator==(const MemoryBufferRef &LHS, const MemoryBufferRef &RHS)
Check pointer identity (not value) of identifier and data.
friend bool operator!=(const MemoryBufferRef &LHS, const MemoryBufferRef &RHS)
const char * getBufferEnd() const
MemoryBufferRef()=default
This interface provides simple read-only access to a block of memory, and provides simple methods for...
StringRef - Represent a constant reference to a string, i.e.
This is an optimization pass for GlobalISel generic memory operations.