rippled
Loading...
Searching...
No Matches
LedgerFormats.h
1#ifndef XRPL_PROTOCOL_LEDGERFORMATS_H_INCLUDED
2#define XRPL_PROTOCOL_LEDGERFORMATS_H_INCLUDED
3
4#include <xrpl/protocol/KnownFormats.h>
5
6namespace ripple {
7
33// clang-format off
35{
36
37#pragma push_macro("LEDGER_ENTRY")
38#undef LEDGER_ENTRY
39
40#define LEDGER_ENTRY(tag, value, ...) tag = value,
41
42#include <xrpl/protocol/detail/ledger_entries.macro>
43
44#undef LEDGER_ENTRY
45#pragma pop_macro("LEDGER_ENTRY")
46
47 //---------------------------------------------------------------------------
59 ltANY = 0,
60
72 ltCHILD = 0x1CD2,
73
74 //---------------------------------------------------------------------------
81 ltNICKNAME [[deprecated("This object type is not supported and should not be used.")]] = 0x006e,
82
89 ltCONTRACT [[deprecated("This object type is not supported and should not be used.")]] = 0x0063,
90
97 ltGENERATOR_MAP [[deprecated("This object type is not supported and should not be used.")]] = 0x0067,
98};
99// clang-format off
100
105 // ltACCOUNT_ROOT
106 lsfPasswordSpent = 0x00010000, // True, if password set fee is spent.
108 0x00020000, // True, to require a DestinationTag for payments.
110 0x00040000, // True, to require a authorization to hold IOUs.
111 lsfDisallowXRP = 0x00080000, // True, to disallow sending XRP.
112 lsfDisableMaster = 0x00100000, // True, force regular key
113 lsfNoFreeze = 0x00200000, // True, cannot freeze ripple states
114 lsfGlobalFreeze = 0x00400000, // True, all assets frozen
116 0x00800000, // True, incoming trust lines allow rippling by default
117 lsfDepositAuth = 0x01000000, // True, all deposits require authorization
118/* // reserved for Hooks amendment
119 lsfTshCollect = 0x02000000, // True, allow TSH collect-calls to acc hooks
120*/
122 0x04000000, // True, reject new incoming NFT offers
124 0x08000000, // True, reject new checks
126 0x10000000, // True, reject new paychans
128 0x20000000, // True, reject new trustlines (only if no issued assets)
130 0x40000000, // True, enable trustline locking
132 0x80000000, // True, enable clawback
133
134 // ltOFFER
135 lsfPassive = 0x00010000,
136 lsfSell = 0x00020000, // True, offer was placed as a sell.
137 lsfHybrid = 0x00040000, // True, offer is hybrid.
138
139 // ltRIPPLE_STATE
140 lsfLowReserve = 0x00010000, // True, if entry counts toward reserve.
141 lsfHighReserve = 0x00020000,
142 lsfLowAuth = 0x00040000,
143 lsfHighAuth = 0x00080000,
144 lsfLowNoRipple = 0x00100000,
145 lsfHighNoRipple = 0x00200000,
146 lsfLowFreeze = 0x00400000, // True, low side has set freeze flag
147 lsfHighFreeze = 0x00800000, // True, high side has set freeze flag
148 lsfLowDeepFreeze = 0x02000000, // True, low side has set deep freeze flag
149 lsfHighDeepFreeze = 0x04000000, // True, high side has set deep freeze flag
150 lsfAMMNode = 0x01000000, // True, trust line to AMM. Used by client
151 // apps to identify payments via AMM.
152
153 // ltSIGNER_LIST
154 lsfOneOwnerCount = 0x00010000, // True, uses only one OwnerCount
155
156 // ltDIR_NODE
159
160 // ltNFTOKEN_OFFER
161 lsfSellNFToken = 0x00000001,
162
163 // ltMPTOKEN_ISSUANCE
164 lsfMPTLocked = 0x00000001, // Also used in ltMPTOKEN
165 lsfMPTCanLock = 0x00000002,
166 lsfMPTRequireAuth = 0x00000004,
167 lsfMPTCanEscrow = 0x00000008,
168 lsfMPTCanTrade = 0x00000010,
169 lsfMPTCanTransfer = 0x00000020,
170 lsfMPTCanClawback = 0x00000040,
171
180
181 // ltMPTOKEN
182 lsfMPTAuthorized = 0x00000002,
183
184 // ltCREDENTIAL
185 lsfAccepted = 0x00010000,
186
187 // ltVAULT
188 lsfVaultPrivate = 0x00010000,
189};
190
191//------------------------------------------------------------------------------
192
195class LedgerFormats : public KnownFormats<LedgerEntryType, LedgerFormats>
196{
197private:
202
203public:
204 static LedgerFormats const&
205 getInstance();
206};
207
208} // namespace ripple
209
210#endif
Manages a list of known formats.
Holds the list of known ledger entry formats.
LedgerFormats()
Create the object.
static LedgerFormats const & getInstance()
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:6
@ lsfHighDeepFreeze
@ lsmfMPTCanMutateRequireAuth
@ lsfMPTCanTransfer
@ lsmfMPTCanMutateCanTransfer
@ lsmfMPTCanMutateCanTrade
@ lsfRequireDestTag
@ lsfMPTCanEscrow
@ lsfOneOwnerCount
@ lsfPasswordSpent
@ lsfDefaultRipple
@ lsfHighNoRipple
@ lsfDisallowIncomingCheck
@ lsfAllowTrustLineClawback
@ lsfNFTokenBuyOffers
@ lsmfMPTCanMutateCanEscrow
@ lsfMPTCanClawback
@ lsmfMPTCanMutateCanClawback
@ lsfNFTokenSellOffers
@ lsfDisableMaster
@ lsmfMPTCanMutateMetadata
@ lsfVaultPrivate
@ lsmfMPTCanMutateCanLock
@ lsfDisallowIncomingPayChan
@ lsfMPTRequireAuth
@ lsfDisallowIncomingTrustline
@ lsfAllowTrustLineLocking
@ lsfDisallowIncomingNFTokenOffer
@ lsfMPTAuthorized
@ lsfGlobalFreeze
@ lsmfMPTCanMutateTransferFee
@ lsfLowDeepFreeze
LedgerEntryType
Identifiers for on-ledger objects.
@ ltNICKNAME
A legacy, deprecated type.
@ ltCONTRACT
A legacy, deprecated type.
@ ltCHILD
A special type, matching any ledger type except directory nodes.
@ ltANY
A special type, matching any ledger entry type.
@ ltGENERATOR_MAP
A legacy, deprecated type.