summaryrefslogtreecommitdiffstats
path: root/third_party/msgpack/include/msgpack/fbuffer.h
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/msgpack/include/msgpack/fbuffer.h')
-rw-r--r--third_party/msgpack/include/msgpack/fbuffer.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/third_party/msgpack/include/msgpack/fbuffer.h b/third_party/msgpack/include/msgpack/fbuffer.h
new file mode 100644
index 0000000000..d766c839e6
--- /dev/null
+++ b/third_party/msgpack/include/msgpack/fbuffer.h
@@ -0,0 +1,38 @@
+/*
+ * MessagePack for C FILE* buffer adaptor
+ *
+ * Copyright (C) 2013 Vladimir Volodko
+ *
+ * Distributed under the Boost Software License, Version 1.0.
+ * (See accompanying file LICENSE_1_0.txt or copy at
+ * http://www.boost.org/LICENSE_1_0.txt)
+ */
+#ifndef MSGPACK_FBUFFER_H
+#define MSGPACK_FBUFFER_H
+
+#include <stdio.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/**
+ * @defgroup msgpack_fbuffer FILE* buffer
+ * @ingroup msgpack_buffer
+ * @{
+ */
+
+static inline int msgpack_fbuffer_write(void* data, const char* buf, size_t len)
+{
+ return (len == fwrite(buf, len, 1, (FILE *)data)) ? 0 : -1;
+}
+
+/** @} */
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* msgpack/fbuffer.h */