Directories
¶
| Path | Synopsis |
|---|---|
|
Package amendment implements the XRPL amendment system for managing protocol feature activation.
|
Package amendment implements the XRPL amendment system for managing protocol feature activation. |
|
cmd
|
|
|
goxrpl
command
|
|
|
codec
|
|
|
addresscodec
Package addresscodec provides base58 encoding and decoding functionality for XRPL addresses and keys.
|
Package addresscodec provides base58 encoding and decoding functionality for XRPL addresses and keys. |
|
binarycodec
Package binarycodec implements binary serialization and deserialization of XRPL objects using the canonical field ordering defined by the XRPL protocol.
|
Package binarycodec implements binary serialization and deserialization of XRPL objects using the canonical field ordering defined by the XRPL protocol. |
|
binarycodec/definitions
Package definitions contains XRPL binary codec field and type definitions.
|
Package definitions contains XRPL binary codec field and type definitions. |
|
binarycodec/internal/decimal
Package decimal parses and formats exact decimal values used by the binary codec.
|
Package decimal parses and formats exact decimal values used by the binary codec. |
|
binarycodec/serdes
Package serdes provides utilities to parse and serialize XRPL binary data fields.
|
Package serdes provides utilities to parse and serialize XRPL binary data fields. |
|
binarycodec/types
Package types contains data structures for binary codec operations.
|
Package types contains data structures for binary codec operations. |
|
Package config defines and loads the goxrpl node configuration.
|
Package config defines and loads the goxrpl node configuration. |
|
Package crypto provides cryptographic operations for the XRPL protocol.
|
Package crypto provides cryptographic operations for the XRPL protocol. |
|
ed25519
Package ed25519 implements the Ed25519 signing algorithm for the XRP Ledger.
|
Package ed25519 implements the Ed25519 signing algorithm for the XRP Ledger. |
|
mptcrypto
Package mptcrypto provides confidential MPT cryptographic operations.
|
Package mptcrypto provides confidential MPT cryptographic operations. |
|
rfc1751
Package rfc1751 implements RFC 1751 (S/KEY) encoding/decoding of binary data as human-readable English words.
|
Package rfc1751 implements RFC 1751 (S/KEY) encoding/decoding of binary data as human-readable English words. |
|
secp256k1
Package secp256k1 implements the secp256k1 ECDSA signing algorithm for the XRP Ledger.
|
Package secp256k1 implements the secp256k1 ECDSA signing algorithm for the XRP Ledger. |
|
secp256k1/shim
Package shim binds the secp256k1 operations used by the XRPL secp256k1 implementation to libsecp256k1.
|
Package shim binds the secp256k1 operations used by the XRPL secp256k1 implementation to libsecp256k1. |
|
sha512half
Package sha512half provides SHA-512Half, the fundamental hashing primitive of the XRP Ledger.
|
Package sha512half provides SHA-512Half, the fundamental hashing primitive of the XRP Ledger. |
|
Package drops provides type-safe XRP amount arithmetic.
|
Package drops provides type-safe XRP amount arithmetic. |
|
internal
|
|
|
cmdexit
Package cmdexit defines the sentinel error a CLI command returns to request a non-zero process exit without an additional error line.
|
Package cmdexit defines the sentinel error a CLI command returns to request a non-zero process exit without an additional error line. |
|
consensus
Package consensus defines the interface and types for XRPL consensus algorithms.
|
Package consensus defines the interface and types for XRPL consensus algorithms. |
|
consensus/adaptor
Package adaptor provides the concrete implementation of the consensus.Adaptor interface, bridging the consensus engine to the ledger service, P2P overlay, and transaction queue.
|
Package adaptor provides the concrete implementation of the consensus.Adaptor interface, bridging the consensus engine to the ledger service, P2P overlay, and transaction queue. |
|
consensus/amendmentvote
Package amendmentvote decides whether to inject EnableAmendment pseudo-txs into the consensus tx set at a flag-ledger boundary.
|
Package amendmentvote decides whether to inject EnableAmendment pseudo-txs into the consensus tx set at a flag-ledger boundary. |
|
consensus/archive
Package archive persists validations evicted from the in-memory tracker.
|
Package archive persists validations evicted from the in-memory tracker. |
|
consensus/common
Package common holds helpers shared by the consensus vote producers (feevote, amendmentvote, negativeunlvote) that assemble pseudo-txs for injection into the flag-ledger tx set.
|
Package common holds helpers shared by the consensus vote producers (feevote, amendmentvote, negativeunlvote) that assemble pseudo-txs for injection into the flag-ledger tx set. |
|
consensus/csf
Package csf provides a Consensus Simulation Framework: a deterministic discrete-event scheduler, a simulated peer-to-peer network, a trust graph and a ledger oracle for exercising the production consensus engine without real time or sockets.
|
Package csf provides a Consensus Simulation Framework: a deterministic discrete-event scheduler, a simulated peer-to-peer network, a trust graph and a ledger oracle for exercising the production consensus engine without real time or sockets. |
|
consensus/feevote
Package feevote decides whether to inject a SetFee pseudo-tx into the consensus tx set at a flag-ledger boundary, tallying trusted validators' fee votes from the prior voting ledger.
|
Package feevote decides whether to inject a SetFee pseudo-tx into the consensus tx set at a flag-ledger boundary, tallying trusted validators' fee votes from the prior voting ledger. |
|
consensus/ledgertrie
Package ledgertrie implements branchSupport-based preferred-ledger selection over a compressed ancestry trie, porting rippled's LedgerTrie (LedgerTrie.h).
|
Package ledgertrie implements branchSupport-based preferred-ledger selection over a compressed ancestry trie, porting rippled's LedgerTrie (LedgerTrie.h). |
|
consensus/negativeunlvote
Package negativeunlvote produces UNLModify pseudo-transactions for flag ledgers.
|
Package negativeunlvote produces UNLModify pseudo-transactions for flag ledgers. |
|
consensus/rcl
Package rcl implements the Ripple Consensus Ledger algorithm.
|
Package rcl implements the Ripple Consensus Ledger algorithm. |
|
feetrack
Package feetrack implements the local-node load-fee tracker, mirroring the behaviour of rippled's LoadFeeTrack.
|
Package feetrack implements the local-node load-fee tracker, mirroring the behaviour of rippled's LoadFeeTrack. |
|
grpc
Package grpc implements the XRPLedgerAPIService gRPC surface mirroring rippled's binary-only ledger RPCs (the API surface consumed by Clio): GetLedger, GetLedgerEntry, GetLedgerData and GetLedgerDiff.
|
Package grpc implements the XRPLedgerAPIService gRPC surface mirroring rippled's binary-only ledger RPCs (the API surface consumed by Clio): GetLedger, GetLedgerEntry, GetLedgerData and GetLedgerDiff. |
|
ledger/cleaner
Package cleaner implements a background ledger-integrity verifier, the go-xrpl analog of rippled's LedgerCleaner.
|
Package cleaner implements a background ledger-integrity verifier, the go-xrpl analog of rippled's LedgerCleaner. |
|
ledger/inbound
Package inbound provides lightweight ledger acquisition from peers.
|
Package inbound provides lightweight ledger acquisition from peers. |
|
ledger/inbound/inboundtest
Package inboundtest provides shared test utilities for the internal/ledger/inbound package and its sibling-package consumers.
|
Package inboundtest provides shared test utilities for the internal/ledger/inbound package and its sibling-package consumers. |
|
ledger/localtxs
Package localtxs is goxrpl's port of rippled's app/ledger/LocalTxs.
|
Package localtxs is goxrpl's port of rippled's app/ledger/LocalTxs. |
|
ledger/negativeunl
Package negativeunl applies flag-ledger NegativeUNL transitions (pending ValidatorToDisable / ValidatorToReEnable → DisabledValidators) on a state map.
|
Package negativeunl applies flag-ledger NegativeUNL transitions (pending ValidatorToDisable / ValidatorToReEnable → DisabledValidators) on a state map. |
|
ledger/openledger
Package openledger implements rippled's OpenLedger semantics for go-xrpl.
|
Package openledger implements rippled's OpenLedger semantics for go-xrpl. |
|
ledger/replayfault
Package replayfault records replay failures that must stop signing and proposal publication until the affected state has been independently verified.
|
Package replayfault records replay failures that must stop signing and proposal publication until the affected state has been independently verified. |
|
ledger/service/svcerr
Package svcerr defines the typed sentinel errors returned by the ledger service.
|
Package svcerr defines the typed sentinel errors returned by the ledger service. |
|
ledger/shamapstore
Package shamapstore implements go-xrpl's online-delete subsystem — the go-xrpl equivalent of rippled's SHAMapStore (src/xrpld/app/misc/SHAMapStore.h).
|
Package shamapstore implements go-xrpl's online-delete subsystem — the go-xrpl equivalent of rippled's SHAMapStore (src/xrpld/app/misc/SHAMapStore.h). |
|
ledger/skiplist
Package skiplist manages the LedgerHashes skip-list SLEs that let a single ledger resolve the hashes of its ancestors.
|
Package skiplist manages the LedgerHashes skip-list SLEs that let a single ledger resolve the hashes of its ancestors. |
|
manifest
Package manifest implements validator manifest parsing, verification, caching, and persistence.
|
Package manifest implements validator manifest parsing, verification, caching, and persistence. |
|
observability
Package observability hosts process-level metrics surfaced to RPC.
|
Package observability hosts process-level metrics surfaced to RPC. |
|
peermanagement
Package peermanagement implements XRPL peer-to-peer networking.
|
Package peermanagement implements XRPL peer-to-peer networking. |
|
peermanagement/cluster
Package cluster maintains the registry of cluster-trusted node identities — operators run a small set of nodes that they configure to know about each other via [cluster_nodes].
|
Package cluster maintains the registry of cluster-trusted node identities — operators run a small set of nodes that they configure to know about each other via [cluster_nodes]. |
|
peermanagement/message
Package message implements XRPL peer protocol message types and serialization.
|
Package message implements XRPL peer protocol message types and serialization. |
|
peermanagement/peertls
Package peertls provides the TLS 1.2-or-newer transport used by XRPL peers.
|
Package peertls provides the TLS 1.2-or-newer transport used by XRPL peers. |
|
peermanagement/peertls/shim
Package shim is the cgo binding for the OpenSSL TLS engine used by peertls.
|
Package shim is the cgo binding for the OpenSSL TLS engine used by peertls. |
|
peermanagement/resource
Package resource implements bounded per-endpoint peer load tracking.
|
Package resource implements bounded per-endpoint peer load tracking. |
|
replaytool
Package replaytool implements the offline mainnet-replay and fixture-replay developer commands (`replay`, `replay-range`).
|
Package replaytool implements the offline mainnet-replay and fixture-replay developer commands (`replay`, `replay-range`). |
|
rpc/txprojection
Package txprojection contains the API-version-specific transaction JSON shaping shared by RPC handlers and WebSocket publishers.
|
Package txprojection contains the API-version-specific transaction JSON shaping shared by RPC handlers and WebSocket publishers. |
|
statecompare
Package statecompare reads replay manifests and immutable pack objects from the xrpl-state-compare data plane.
|
Package statecompare reads replay manifests and immutable pack objects from the xrpl-state-compare data plane. |
|
testing
Package jtx provides test infrastructure for XRPL transaction testing.
|
Package jtx provides test infrastructure for XRPL transaction testing. |
|
testing/amm
Package amm provides test builders for AMM transactions.
|
Package amm provides test builders for AMM transactions. |
|
testing/batch
Package batch provides test builder helpers for Batch transactions.
|
Package batch provides test builder helpers for Batch transactions. |
|
testing/conformance
Package conformance provides a test runner for xrpl-fixtures test vectors.
|
Package conformance provides a test runner for xrpl-fixtures test vectors. |
|
testing/consensus
Package consensus provides integration test utilities for multi-node consensus testing.
|
Package consensus provides integration test utilities for multi-node consensus testing. |
|
testing/depositpreauth
Package depositpreauth provides fluent transaction builder helpers for DepositPreauth testing, plus integration tests matching rippled's DepositAuth_test.cpp and DepositPreauth_test sections.
|
Package depositpreauth provides fluent transaction builder helpers for DepositPreauth testing, plus integration tests matching rippled's DepositAuth_test.cpp and DepositPreauth_test sections. |
|
testing/enginefuzz
Package enginefuzz hosts a stateful, property-based fuzz harness over the goXRPL transaction engine.
|
Package enginefuzz hosts a stateful, property-based fuzz harness over the goXRPL transaction engine. |
|
testing/marketfixtures
Package marketfixtures supplies shared MPT book and amount vectors for flow and RPC tests.
|
Package marketfixtures supplies shared MPT book and amount vectors for flow and RPC tests. |
|
testing/metadata
Package metadata provides test helpers for validating transaction metadata.
|
Package metadata provides test helpers for validating transaction metadata. |
|
testing/mpt
Package mpt provides test helpers for MPT (Multi-Purpose Token) transaction testing.
|
Package mpt provides test helpers for MPT (Multi-Purpose Token) transaction testing. |
|
testing/pathfuzz
Package pathfuzz hosts generative, property-based fuzz harnesses over the goXRPL payment engine: cross-currency flow (RippleCalc) and path discovery (the Pathfinder).
|
Package pathfuzz hosts generative, property-based fuzz harnesses over the goXRPL payment engine: cross-currency flow (RippleCalc) and path discovery (the Pathfinder). |
|
testing/payment
Package builders provides fluent transaction builder helpers for testing.
|
Package builders provides fluent transaction builder helpers for testing. |
|
testing/permissioneddex
Package permissioneddex provides test helpers for PermissionedDEX tests.
|
Package permissioneddex provides test helpers for PermissionedDEX tests. |
|
testing/rpcenv
Package rpcenv wires the in-memory test ledger built by internal/testing into the same RPC handler registry the production server uses, so handlers can be exercised end-to-end against real ledger state.
|
Package rpcenv wires the in-memory test ledger built by internal/testing into the same RPC handler registry the production server uses, so handlers can be exercised end-to-end against real ledger state. |
|
testing/ticket
Package ticket provides test helpers for Ticket transaction testing.
|
Package ticket provides test helpers for Ticket transaction testing. |
|
testutil/rippled
Package rippled locates pinned protocol source files for inventory tests.
|
Package rippled locates pinned protocol source files for inventory tests. |
|
tx/all
Package all aggregates all transaction sub-packages and exposes a single RegisterAll() entry point that registers every transaction type with the tx registry.
|
Package all aggregates all transaction sub-packages and exposes a single RegisterAll() entry point that registers every transaction type with the tx registry. |
|
tx/escrow
Package escrow implements EscrowCreate, EscrowFinish, and EscrowCancel transactions.
|
Package escrow implements EscrowCreate, EscrowFinish, and EscrowCancel transactions. |
|
tx/lending
Package lending implements the XLS-66 LendingProtocol transaction types (LoanBroker* and Loan*), porting rippled 3.1.0's transactor semantics onto the XRPLNumber amortization math in the lmath subpackage.
|
Package lending implements the XLS-66 LendingProtocol transaction types (LoanBroker* and Loan*), porting rippled 3.1.0's transactor semantics onto the XRPLNumber amortization math in the lmath subpackage. |
|
tx/lending/lmath
Package lmath ports the XLS-66 lending amortization math from rippled 3.1.0 (src/xrpld/app/misc/detail/LendingHelpers.cpp) onto the XRPLNumber foundation.
|
Package lmath ports the XLS-66 lending amortization math from rippled 3.1.0 (src/xrpld/app/misc/detail/LendingHelpers.cpp) onto the XRPLNumber foundation. |
|
tx/offer
Reference: rippled CreateOffer.cpp, CancelOffer.cpp
|
Reference: rippled CreateOffer.cpp, CancelOffer.cpp |
|
tx/sigcache
Package sigcache caches positive signature verdicts by transaction ID and signing namespace.
|
Package sigcache caches positive signature verdicts by transaction ID and signing namespace. |
|
validator/list
Package list implements the publisher-trust validator-list subsystem — the rippled-faithful counterpart of rippled/src/xrpld/app/misc/ ValidatorList.cpp + ValidatorSite.cpp.
|
Package list implements the publisher-trust validator-list subsystem — the rippled-faithful counterpart of rippled/src/xrpld/app/misc/ ValidatorList.cpp + ValidatorSite.cpp. |
|
watchdog
Package watchdog detects stalled node event loops and guarantees terminal recovery when a stall reaches the abort threshold.
|
Package watchdog detects stalled node event loops and guarantees terminal recovery when a stall reaches the abort threshold. |
|
Package keylet provides functions to compute the 256-bit SHA-512Half keys that uniquely identify ledger entries in the XRPL state tree.
|
Package keylet provides functions to compute the 256-bit SHA-512Half keys that uniquely identify ledger entries in the XRPL state tree. |
|
ledger
|
|
|
entry
Package entry holds protocol-level definitions for XRPL ledger entries (Serializable Ledger Entries, "SLE").
|
Package entry holds protocol-level definitions for XRPL ledger entries (Serializable Ledger Entries, "SLE"). |
|
entry/cmd/entrygen
command
Command ledgerfieldsgen emits one typed-decoder Go file per ledger entry type listed in ledger/entry/schema.Specs.
|
Command ledgerfieldsgen emits one typed-decoder Go file per ledger entry type listed in ledger/entry/schema.Specs. |
|
entry/schema
Package schema is the declarative source of truth for the per-entry-type typed metadata decoders generated under ledger/entry.
|
Package schema is the declarative source of truth for the per-entry-type typed metadata decoders generated under ledger/entry. |
|
Package log provides structured logging for go-xrpl.
|
Package log provides structured logging for go-xrpl. |
|
Package protocol defines XRPL protocol constants used throughout the codebase.
|
Package protocol defines XRPL protocol constants used throughout the codebase. |
|
scripts
|
|
|
amendment-watch
command
Package main provides a manual freshness-checked amendment registry report.
|
Package main provides a manual freshness-checked amendment registry report. |
|
docsgen/registries
command
Command registries generates transaction, amendment, and ledger-entry docs from their live registries.
|
Command registries generates transaction, amendment, and ledger-entry docs from their live registries. |
|
docsgen/rpcmethods
command
Command rpcmethods generates docs/rpc-methods.md from the live RPC method descriptors, including each method's role, condition, and API versions.
|
Command rpcmethods generates docs/rpc-methods.md from the live RPC method descriptors, including each method's role, condition, and API versions. |
|
Package shamap implements the SHAMap, a Merkle-like radix tree used by the XRPL for ledger state and transaction storage.
|
Package shamap implements the SHAMap, a Merkle-like radix tree used by the XRPL for ledger state and transaction storage. |
|
backend
Package backend adapts NodeStore databases for use by SHAMaps.
|
Package backend adapts NodeStore databases for use by SHAMaps. |
|
storage
|
|
|
kvstore
Package kvstore defines a generic key-value storage interface for persistent data backends.
|
Package kvstore defines a generic key-value storage interface for persistent data backends. |
|
kvstore/kvstoretest
Package kvstoretest provides a shared, backend-agnostic conformance suite for the kvstore.KeyValueStore contract.
|
Package kvstoretest provides a shared, backend-agnostic conformance suite for the kvstore.KeyValueStore contract. |
|
kvstore/memorydb
Package memorydb implements the kvstore.KeyValueStore interface using an in-memory map.
|
Package memorydb implements the kvstore.KeyValueStore interface using an in-memory map. |
|
kvstore/pebble
Package pebble implements the kvstore.KeyValueStore interface using CockroachDB/Pebble.
|
Package pebble implements the kvstore.KeyValueStore interface using CockroachDB/Pebble. |
|
nodestore
Package nodestore provides blockchain state storage for XRPL node data.
|
Package nodestore provides blockchain state storage for XRPL node data. |
|
relationaldb
Package relationaldb defines the SQL-backed storage layer for queryable ledger data.
|
Package relationaldb defines the SQL-backed storage layer for queryable ledger data. |
|
relationaldb/internal/contracttest
Package contracttest verifies relational repository backend parity.
|
Package contracttest verifies relational repository backend parity. |
|
relationaldb/internal/sqlutil
Package sqlutil provides guarded database executors shared by relational backends.
|
Package sqlutil provides guarded database executors shared by relational backends. |
|
relationaldb/postgres
Package postgres implements the github.com/LeJamon/go-xrpl/storage/relationaldb repository interfaces on top of PostgreSQL.
|
Package postgres implements the github.com/LeJamon/go-xrpl/storage/relationaldb repository interfaces on top of PostgreSQL. |
|
relationaldb/sqlite
Package sqlite implements the github.com/LeJamon/go-xrpl/storage/relationaldb repository interfaces on top of SQLite.
|
Package sqlite implements the github.com/LeJamon/go-xrpl/storage/relationaldb repository interfaces on top of SQLite. |
|
Package version holds the node's software and build versions.
|
Package version holds the node's software and build versions. |
Click to show internal directories.
Click to hide internal directories.