xrpld
Loading...
Searching...
No Matches
jtx_json.cpp
1#include <test/jtx/jtx_json.h>
2
3#include <test/jtx/Env.h>
4#include <test/jtx/JTx.h>
5#include <test/jtx/utility.h>
6
7#include <xrpl/basics/contract.h>
8#include <xrpl/json/json_reader.h>
9#include <xrpl/json/json_value.h>
10
11#include <string>
12#include <utility>
13
14namespace xrpl::test::jtx {
15
17{
18 if (!json::Reader().parse(s, jv_))
19 Throw<ParseError>("bad json");
20}
21
22Json::Json(char const* s) : Json(std::string(s))
23{
24}
25
26Json::Json(json::Value jv) : jv_(std::move(jv))
27{
28}
29
30void
32{
33 auto& jv = jt.jv;
34 for (auto iter = jv_.begin(); iter != jv_.end(); ++iter)
35 jv[iter.key().asString()] = *iter;
36}
37
38} // namespace xrpl::test::jtx
Unserialize a JSON document into a Value.
Definition json_reader.h:17
Represents a JSON value.
Definition json_value.h:130
A transaction testing environment.
Definition Env.h:143
::json::Value jv_
Definition jtx_json.h:13
void operator()(Env &, JTx &jt) const
Definition jtx_json.cpp:31
Json(std::string const &)
Definition jtx_json.cpp:16
STL namespace.
STObject parse(json::Value const &jv)
Convert JSON to STObject.
Definition utility.cpp:31
XRPL_NO_SANITIZE_ADDRESS void Throw(Args &&... args)
Definition contract.h:49
Execution context for applying a JSON transaction.
Definition JTx.h:23
json::Value jv
Definition JTx.h:24