Decentralised Art Server
High-performance C++ backend that exposes HTML interface and a secure REST API for managing Performative Transactions entities
 
Loading...
Searching...
No Matches
transformation.hpp
Go to the documentation of this file.
1#pragma once
2#include <string>
3#include <regex>
4#include <algorithm>
5
6#include <absl/hash/hash.h>
7#include <spdlog/spdlog.h>
8
9#include "transformation.pb.h"
10
11#include "parser.hpp"
12
13namespace dcn
14{
23 template <typename H>
24 inline H AbslHashValue(H h, const Transformation& t) {
25 return H::combine(std::move(h), t.name(), t.sol_src());
26 }
27
29}
30
31namespace dcn::parse
32{
38 std::optional<json> parseToJson(Transformation transformation, use_json_t);
39
45 std::optional<Transformation> parseFromJson(json json_obj, use_json_t);
46
52 std::optional<std::string> parseToJson(Transformation transformation, use_protobuf_t);
53
59 std::optional<Transformation> parseFromJson(std::string json_str, use_protobuf_t);
60
66 std::optional<json> parseToJson(TransformationRecord transformation_record, use_json_t);
67
73 std::optional<std::string> parseToJson(TransformationRecord transformation_record, use_protobuf_t);
74
80 template<>
81 std::optional<TransformationRecord> parseFromJson(json json_obj, use_json_t);
82
88 template<>
89 std::optional<TransformationRecord> parseFromJson(std::string json_str, use_protobuf_t);
90
91}
Definition auth.hpp:34
std::optional< json > parseToJson(TransformationDef transform_def, use_json_t)
Parses a TransformationDef object to a JSON object.
Definition feature.cpp:93
std::optional< T > parseFromJson(json json, use_json_t)
Parses a JSON object to a Transformation object.
Definition decentralised_art.hpp:30
std::string constructTransformationSolidityCode(const Transformation &transformation)
Definition transformation.cpp:5
H AbslHashValue(H h, const evmc::address &addr)
Definition evm_storage.hpp:137
nlohmann::json json
Definition parser.hpp:4