jubatus_core  0.1.2
Jubatus: Online machine learning framework for distributed environment
Classes | Functions
msgpack Namespace Reference

Classes

class  packer
 

Functions

template<typename Stream , typename K , typename V , typename H , typename E , typename A >
packer< Stream > & operator<< (packer< Stream > &o, const jubatus::util::data::unordered_map< K, V, H, E, A > &v)
 
template<typename Stream >
packer< Stream > & operator<< (packer< Stream > &o, const jubatus::core::common::byte_buffer &b)
 
void operator<< (object::with_zone &o, const jubatus::core::common::byte_buffer &b)
 
void operator<< (object &o, const jubatus::core::common::byte_buffer &b)
 
template<typename K , typename V , typename H , typename E , typename A >
jubatus::util::data::unordered_map< K, V, H, E, A > operator>> (object o, jubatus::util::data::unordered_map< K, V, H, E, A > &v)
 
jubatus::core::common::byte_bufferoperator>> (object o, jubatus::core::common::byte_buffer &b)
 

Function Documentation

template<typename Stream , typename K , typename V , typename H , typename E , typename A >
packer<Stream>& msgpack::operator<< ( packer< Stream > &  o,
const jubatus::util::data::unordered_map< K, V, H, E, A > &  v 
)
inline

Definition at line 49 of file unordered_map.hpp.

51  {
52  o.pack_map(v.size());
53  typedef typename
54  jubatus::util::data::unordered_map<K, V, H, E, A>::const_iterator
55  iter_t;
56  for (iter_t it = v.begin(); it != v.end(); ++it) {
57  o.pack(it->first);
58  o.pack(it->second);
59  }
60  return o;
61 }
std::vector< T > v(size)
template<typename Stream >
packer<Stream>& msgpack::operator<< ( packer< Stream > &  o,
const jubatus::core::common::byte_buffer b 
)
inline

Definition at line 117 of file byte_buffer.hpp.

References jubatus::core::common::byte_buffer::ptr(), and jubatus::core::common::byte_buffer::size().

119  {
120  o.pack_raw(b.size());
121  o.pack_raw_body(b.ptr(), b.size());
122  return o;
123 }

Here is the call graph for this function:

void msgpack::operator<< ( object::with_zone &  o,
const jubatus::core::common::byte_buffer b 
)
inline

Definition at line 125 of file byte_buffer.hpp.

References jubatus::core::common::byte_buffer::ptr(), and jubatus::core::common::byte_buffer::size().

127  {
128  o.type = type::RAW;
129  char* ptr = static_cast<char*>(o.zone->malloc(b.size()));
130  o.via.raw.ptr = ptr;
131  o.via.raw.size = static_cast<uint32_t>(b.size());
132  std::memcpy(ptr, b.ptr(), b.size());
133 }

Here is the call graph for this function:

void msgpack::operator<< ( object &  o,
const jubatus::core::common::byte_buffer b 
)
inline

Definition at line 135 of file byte_buffer.hpp.

References jubatus::core::common::byte_buffer::ptr(), and jubatus::core::common::byte_buffer::size().

137  {
138  o.type = type::RAW;
139  o.via.raw.ptr = b.ptr();
140  o.via.raw.size = static_cast<uint32_t>(b.size());
141 }

Here is the call graph for this function:

template<typename K , typename V , typename H , typename E , typename A >
jubatus::util::data::unordered_map<K, V, H, E, A> msgpack::operator>> ( object  o,
jubatus::util::data::unordered_map< K, V, H, E, A > &  v 
)
inline

Definition at line 28 of file unordered_map.hpp.

References jubatus::core::common::jsonconfig::v().

30  {
31  if (o.type != type::MAP) {
32  throw type_error();
33  }
34  object_kv* const p_end = o.via.map.ptr + o.via.map.size;
35  for (object_kv* p = o.via.map.ptr; p != p_end; ++p) {
36  K key;
37  p->key.convert(&key);
38  p->val.convert(&v[key]);
39  }
40  return v;
41 }
std::vector< T > v(size)

Here is the call graph for this function:

jubatus::core::common::byte_buffer& msgpack::operator>> ( object  o,
jubatus::core::common::byte_buffer b 
)
inline

Definition at line 105 of file byte_buffer.hpp.

References jubatus::core::common::byte_buffer::assign().

107  {
108  if (o.type != type::RAW) {
109  throw type_error();
110  }
111 
112  b.assign(o.via.raw.ptr, o.via.raw.size);
113  return b;
114 }
void assign(const void *ptr, size_t size)
Definition: byte_buffer.hpp:60

Here is the call graph for this function: