17#ifndef ACTIONENGINE_DATA_MSGPACK_H_ 
   18#define ACTIONENGINE_DATA_MSGPACK_H_ 
   20#include <absl/status/status.h> 
   21#include <absl/time/time.h> 
   32absl::Status CppackToBytes(
const absl::Status& status, Packer& packer);
 
   33absl::Status CppackFromBytes(absl::Status& status, Unpacker& unpacker);
 
   35absl::Status CppackToBytes(absl::Time obj, Packer& packer);
 
   36absl::Status CppackFromBytes(absl::Time& obj, Unpacker& unpacker);
 
   38absl::Status CppackToBytes(
const act::ChunkMetadata& obj, Packer& packer);
 
   39absl::Status CppackFromBytes(act::ChunkMetadata& obj, Unpacker& unpacker);
 
   41absl::Status CppackToBytes(
const act::Chunk& obj, Packer& packer);
 
   42absl::Status CppackFromBytes(act::Chunk& obj, Unpacker& unpacker);
 
   44absl::Status CppackToBytes(
const act::NodeRef& obj, Packer& packer);
 
   45absl::Status CppackFromBytes(act::NodeRef& obj, Unpacker& unpacker);
 
   47absl::Status CppackToBytes(
const act::NodeFragment& obj, Packer& packer);
 
   48absl::Status CppackFromBytes(act::NodeFragment& obj, Unpacker& unpacker);
 
   50absl::Status CppackToBytes(
const act::Port& obj, Packer& packer);
 
   51absl::Status CppackFromBytes(act::Port& obj, Unpacker& unpacker);
 
   53absl::Status CppackToBytes(
const act::ActionMessage& obj, Packer& packer);
 
   54absl::Status CppackFromBytes(act::ActionMessage& obj, Unpacker& unpacker);
 
   56absl::Status CppackToBytes(
const act::WireMessage& obj, Packer& packer);
 
   57absl::Status CppackFromBytes(act::WireMessage& obj, Unpacker& unpacker);
 
ActionEngine data structures used to implement actions and nodes (data streams).