1#include <xrpl/basics/contract.h>
2#include <xrpl/json/json_value.h>
3#include <xrpl/protocol/AccountID.h>
4#include <xrpl/protocol/Asset.h>
5#include <xrpl/protocol/Issue.h>
6#include <xrpl/protocol/MPTIssue.h>
7#include <xrpl/protocol/STAmount.h>
8#include <xrpl/protocol/jss.h>
20 [&](
auto&& issue) ->
AccountID const& {
return issue.getIssuer(); },
46 [&](
auto const& issue) {
return to_string(issue); }, asset.
value());
52 if (jv.
isMember(jss::mpt_issuance_id))
61 Throw<std::runtime_error>(
62 "assetFromJson must contain currency or mpt_issuance_id");
bool isMember(char const *key) const
Return true if the object has a member named key.
STAmount operator()(Number const &) const
void setJson(Json::Value &jv) const
constexpr value_type const & value() const
AccountID const & getIssuer() const
std::string getText() const
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
base_uint< 160, detail::AccountIDTag > AccountID
A 160-bit unsigned that uniquely identifies an account.
Asset assetFromJson(Json::Value const &jv)
MPTIssue mptIssueFromJson(Json::Value const &jv)
bool validJSONAsset(Json::Value const &jv)
Issue issueFromJson(Json::Value const &v)
std::string to_string(base_uint< Bits, Tag > const &a)