summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/codec/data.h7
-rw-r--r--src/codec/proto_forst.h61
-rw-r--r--src/codec/proto_kel.h41
3 files changed, 68 insertions, 41 deletions
diff --git a/src/codec/data.h b/src/codec/data.h
index 1682ae7..310942c 100644
--- a/src/codec/data.h
+++ b/src/codec/data.h
@@ -58,6 +58,11 @@ struct native_data_type<schema::Primitive<schema::FloatingPoint, 4>> {
using type = float;
};
+template <>
+struct native_data_type<schema::Primitive<schema::FloatingPoint, 8>> {
+ using type = double;
+};
+
template<typename T, typename Encoding = encode::Native>
class data {
private:
@@ -86,4 +91,6 @@ template<typename T, size_t N>
class data<schema::Primitive<T,N>, encode::Native> {
private:
};
+
+
}
diff --git a/src/codec/proto_forst.h b/src/codec/proto_forst.h
new file mode 100644
index 0000000..1f390fe
--- /dev/null
+++ b/src/codec/proto_forst.h
@@ -0,0 +1,61 @@
+#pragma once
+
+#include "data.h"
+
+#include <forstio/core/error.h>
+
+namespace saw {
+namespace encode {
+struct ProtoForst {};
+}
+
+template<typename Schema>
+class data<Schema, encode::ProtoForst> {
+private:
+ own<buffer> buffer_;
+public:
+ data(own<buffer>&& buffer__):buffer_{std::move(buffer__)}{}
+
+ buffer& get_buffer(){
+ return *buffer_;
+ }
+
+ const buffer& get_buffer() const {
+ return *buffer_;
+ }
+};
+namespace impl {
+template<typename T, size_t N>
+class codec<schema::Primitive<T,N>, encode::ProtoForst> {
+
+
+ static error encode(typename const data<schema::Primitive<T,N>, encode::Native>& native){
+
+ return no_error();
+ }
+
+ static uint64_t size(const data<schema::Primitive<T,N>, encode::Native>& d) {
+ return static_cast<uint64_t>(N);
+ }
+};
+}
+template<typename Schema>
+class codec<Schema, encode::ProtoForst> {
+public:
+ using meta_type = uint64_t;
+private:
+public:
+ error_or<data<Schema, encode::Native>> decode(const data<Schema, encode::ProtoForst>& encoded){
+
+
+ return make_error<err::not_implemented>();
+ }
+
+ error_or<data<Schema, encode::ProtoForst>> encode(const data<Schema, encode::Native>& native){
+ uint64_t length = 0;
+
+ return make_error<err::not_implemented>();
+ }
+};
+}
+}
diff --git a/src/codec/proto_kel.h b/src/codec/proto_kel.h
deleted file mode 100644
index 3b4ebac..0000000
--- a/src/codec/proto_kel.h
+++ /dev/null
@@ -1,41 +0,0 @@
-#pragma once
-
-#include "data.h"
-
-#include <forstio/core/error.h>
-
-namespace saw {
-namespace encode {
-struct ProtoKel {};
-}
-
-template<typename Schema>
-class data<Schema, encode::ProtoKel> {
-private:
- own<buffer> buffer_;
-public:
- data(own<buffer>&& buffer__):buffer_{std::move(buffer__)}{}
-
- buffer& get_buffer(){
- return *buffer_;
- }
-
- const buffer& get_buffer() const {
- return *buffer_;
- }
-};
-
-template<typename Schema>
-class codec<Schema, encode::ProtoKel> {
-private:
-public:
- error_or<data<Schema, encode::Native>> decode(const data<Schema, encode::ProtoKel>& encoded){
- return make_error<err::not_implemented>();
- }
-
- error_or<data<Schema, encode::ProtoKel>> encode(const data<Schema, encode::Native>& native){
- return make_error<err::not_implemented>();
- }
-};
-}
-}