xrpld
Loading...
Searching...
No Matches
Env_ss.h
1#pragma once
2
3#include <test/jtx/Env.h>
4
5namespace xrpl::test::jtx {
6
11class EnvSs
12{
13private:
15
16private:
18 {
19 public:
23
25 : env_(env), jt_(std::move(jt)), loc_(loc)
26 {
27 }
28
29 void
31 {
32 env_.signAndSubmit(jt_, params, loc_);
33 }
34
35 private:
37 JTx const jt_;
39 };
40
41public:
42 EnvSs(EnvSs const&) = delete;
43 EnvSs&
44 operator=(EnvSs const&) = delete;
45
46 EnvSs(Env& env) : env_(env)
47 {
48 }
49
50 template <class... FN>
51 SignSubmitRunner
53 {
54 auto jtx = env_.jt(std::move(jv.value), fN...);
55 return SignSubmitRunner(env_, std::move(jtx), jv.loc);
56 }
57
58 template <class... FN>
59 SignSubmitRunner
61 {
62 auto jtx = env_.jt(std::move(jv.value), fN...);
63 return SignSubmitRunner(env_, std::move(jtx), jv.loc);
64 }
65};
66
67} // namespace xrpl::test::jtx
Represents a JSON value.
Definition json_value.h:130
std::source_location const loc_
Definition Env_ss.h:38
SignSubmitRunner(Env &env, JTx &&jt, std::source_location loc)
Definition Env_ss.h:24
SignSubmitRunner & operator=(SignSubmitRunner &&)=delete
SignSubmitRunner(SignSubmitRunner &&)=default
void operator()(json::Value const &params=json::ValueType::Null)
Definition Env_ss.h:30
SignSubmitRunner operator()(WithSourceLocation< JTx > jv, FN const &... fN)
Definition Env_ss.h:60
EnvSs & operator=(EnvSs const &)=delete
EnvSs(EnvSs const &)=delete
SignSubmitRunner operator()(WithSourceLocation< json::Value > jv, FN const &... fN)
Definition Env_ss.h:52
A transaction testing environment.
Definition Env.h:143
@ Null
'null' value
Definition json_value.h:19
STL namespace.
Execution context for applying a JSON transaction.
Definition JTx.h:23
Wrapper that captures std::source_location when implicitly constructed.
Definition Env.h:55
std::source_location loc
Definition Env.h:57