LLVM  10.0.0svn
Classes | Namespaces | Enumerations
MsgPackReader.h File Reference

This is a MessagePack reader. More...

#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/raw_ostream.h"
#include <cstdint>
Include dependency graph for MsgPackReader.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  llvm::msgpack::ExtensionType
 Extension types are composed of a user-defined type ID and an uninterpreted sequence of bytes. More...
 
struct  llvm::msgpack::Object
 MessagePack object, represented as a tagged union of C++ types. More...
 
class  llvm::msgpack::Reader
 Reads MessagePack objects from memory, one at a time. More...
 

Namespaces

 llvm
 This class represents lattice values for constants.
 
 llvm::msgpack
 

Enumerations

enum  llvm::msgpack::Type : uint8_t {
  llvm::msgpack::Type::Int, llvm::msgpack::Type::UInt, llvm::msgpack::Type::Nil, llvm::msgpack::Type::Boolean,
  llvm::msgpack::Type::Float, llvm::msgpack::Type::String, llvm::msgpack::Type::Binary, llvm::msgpack::Type::Array,
  llvm::msgpack::Type::Map, llvm::msgpack::Type::Extension
}
 MessagePack types as defined in the standard, with the exception of Integer being divided into a signed Int and unsigned UInt variant in order to map directly to C++ types. More...
 

Detailed Description

This is a MessagePack reader.

See https://github.com/msgpack/msgpack/blob/master/spec.md for the full standard.

Typical usage:

StringRef input = GetInput();
msgpack::Reader MPReader(input);
msgpack::Object Obj;
while (MPReader.read(Obj)) {
switch (Obj.Kind) {
// // Use Obj.Int
break;
// ...
}
}

Definition in file MsgPackReader.h.