class Reader

Declaration

class Reader { /* full declaration omitted */ };

Description

Reads MessagePack objects from memory, one at a time.

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:99

Member Variables

private llvm::MemoryBufferRef InputBuffer
private StringRef::iterator Current
private StringRef::iterator End

Method Overview

  • public Reader(llvm::MemoryBufferRef InputBuffer)
  • public Reader(llvm::StringRef Input)
  • public Reader(const llvm::msgpack::Reader &)
  • private Expected<bool> createExt(llvm::msgpack::Object & Obj, uint32_t Size)
  • private Expected<bool> createRaw(llvm::msgpack::Object & Obj, uint32_t Size)
  • public Expected<bool> read(llvm::msgpack::Object & Obj)
  • private template <class T>Expected<bool> readExt(llvm::msgpack::Object & Obj)
  • private template <class T>Expected<bool> readInt(llvm::msgpack::Object & Obj)
  • private template <class T>Expected<bool> readLength(llvm::msgpack::Object & Obj)
  • private template <class T>Expected<bool> readRaw(llvm::msgpack::Object & Obj)
  • private template <class T>Expected<bool> readUInt(llvm::msgpack::Object & Obj)
  • private size_t remainingSpace()

Methods

Reader(llvm::MemoryBufferRef InputBuffer)

Description

Construct a reader, keeping a reference to the \p InputBuffer.

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:102

Parameters

llvm::MemoryBufferRef InputBuffer

Reader(llvm::StringRef Input)

Description

Construct a reader, keeping a reference to the \p Input.

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:104

Parameters

llvm::StringRef Input

Reader(const llvm::msgpack::Reader&)

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:106

Parameters

const llvm::msgpack::Reader&

Expected<bool> createExt(
    llvm::msgpack::Object& Obj,
    uint32_t Size)

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:142

Parameters

llvm::msgpack::Object& Obj
uint32_t Size

Expected<bool> createRaw(
    llvm::msgpack::Object& Obj,
    uint32_t Size)

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:141

Parameters

llvm::msgpack::Object& Obj
uint32_t Size

Expected<bool> read(llvm::msgpack::Object& Obj)

Description

Read one object from the input buffer, advancing past it. The \p Obj is updated with the kind of the object read, and the corresponding union member is updated. For the collection objects (Array and Map), only the length is read, and the caller must make and additional \c N calls (in the case of Array) or\c N*2 calls (in the case of Map) to \c Read to retrieve the collection elements.

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:123

Parameters

llvm::msgpack::Object& Obj
filled with next object on success.

Returns

true when object successfully read, false when at end of input (and so \p Obj was not updated), otherwise an error.

template <class T>
Expected<bool> readExt(llvm::msgpack::Object& Obj)

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:140

Templates

T

Parameters

llvm::msgpack::Object& Obj

template <class T>
Expected<bool> readInt(llvm::msgpack::Object& Obj)

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:137

Templates

T

Parameters

llvm::msgpack::Object& Obj

template <class T>
Expected<bool> readLength(
    llvm::msgpack::Object& Obj)

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:139

Templates

T

Parameters

llvm::msgpack::Object& Obj

template <class T>
Expected<bool> readRaw(llvm::msgpack::Object& Obj)

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:136

Templates

T

Parameters

llvm::msgpack::Object& Obj

template <class T>
Expected<bool> readUInt(
    llvm::msgpack::Object& Obj)

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:138

Templates

T

Parameters

llvm::msgpack::Object& Obj

size_t remainingSpace()

Declared at: llvm/include/llvm/BinaryFormat/MsgPackReader.h:130