Index

A B C D E F G H I K L M N O P R S T U V W Y Z 
All Classes|All Packages

A

accessList - Variable in class com.norswap.nanoeth.transactions.UnsignedTransaction
 
AccessList - Class in com.norswap.nanoeth.transactions
 
AccessList(AccessList.AccessListItem...) - Constructor for class com.norswap.nanoeth.transactions.AccessList
 
AccessList.AccessListItem - Class in com.norswap.nanoeth.transactions
Associates an address with a collection of storage key within that account's storage tree.
AccessListItem(Address, StorageKey[]) - Constructor for class com.norswap.nanoeth.transactions.AccessList.AccessListItem
 
add(byte[], byte[]) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaTree
Returns the transformed tree, after associating the given value with the given key.
add(long) - Method in class com.norswap.nanoeth.data.Natural
 
add(NodeStore, Nibbles, byte[]) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
 
add(NodeStore, Nibbles, byte[]) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaExtensionNode
 
add(NodeStore, Nibbles, byte[]) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
add(NodeStore, Nibbles, byte[]) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaNode
Returns the transformed node, after associating the given key with the given key suffix.
addMod(int, int) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Adds two bytes together with wrap-around behaviour (e.g.
addNode(T) - Method in class com.norswap.nanoeth.trees.patricia.memory.TreeNodeStore
 
addNode(T) - Method in interface com.norswap.nanoeth.trees.patricia.NodeStore
Adds a node to the store the returns it.
addNode(T) - Method in class com.norswap.nanoeth.trees.patricia.store.MapNodeStore
 
address - Variable in class com.norswap.nanoeth.transactions.AccessList.AccessListItem
 
address() - Method in class com.norswap.nanoeth.signature.EthKeyPair
Returns the address of the Ethereum account associated with the key pair, which is formed by the 20 rightmost byte of the public key's encoding.
address(ECPoint) - Static method in class com.norswap.nanoeth.signature.SignatureUtils
Returns the address of the Ethereum account associated with the public key, which is formed by the 20 rightmost byte of the hash of the public key's encoding.
Address - Class in com.norswap.nanoeth.data
Represents a 160-bit (20 bytes) Ethereum address.
Address(byte[]) - Constructor for class com.norswap.nanoeth.data.Address
 
Address(String) - Constructor for class com.norswap.nanoeth.data.Address
 
addToBloomFilter(BloomFilter) - Method in class com.norswap.nanoeth.receipts.LogEntry
Adds the address and the topics for this entry into the given log filter.
allDistinct(T...) - Static method in class com.norswap.nanoeth.utils.Utils
Returns true iff all supplies values are distinct.
apply(T) - Method in interface com.norswap.nanoeth.utils.Utils.ThrowingFunction
 
arg(boolean, String, Object...) - Static method in class com.norswap.nanoeth.utils.Assert
 
array(int...) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Short way to create an array of bytes that also allows 0-255 values.
Assert - Class in com.norswap.nanoeth.utils
Utilities for performing runtime checks.

B

BERLIN - com.norswap.nanoeth.versions.EthereumVersion
 
BERLIN_START - Static variable in class com.norswap.nanoeth.Config
 
binary() - Method in class com.norswap.nanoeth.transactions.Transaction
Returns the binary encoding of this transaction, for construction of the transaction trie, or transmission over the network.
bits - Variable in class com.norswap.nanoeth.receipts.BloomFilter
The bytes making up the hash.
Block - Class in com.norswap.nanoeth.blocks
Where even to begin? The block in blockchain, the one that holds transactions.
Block(BlockHeader, Transaction[], BlockHeader[]) - Constructor for class com.norswap.nanoeth.blocks.Block
 
BLOCK_VALID - Static variable in class com.norswap.nanoeth.blocks.BlockValidity
Blockchain - Class in com.norswap.nanoeth.chain
 
Blockchain() - Constructor for class com.norswap.nanoeth.chain.Blockchain
 
BlockHeader - Class in com.norswap.nanoeth.blocks
 
BlockHeader(Hash, Hash, Address, MerkleRoot, MerkleRoot, MerkleRoot, BloomFilter, Natural, Natural, Natural, Natural, Natural, byte[], Hash, long) - Constructor for class com.norswap.nanoeth.blocks.BlockHeader
Constructs a header from header data, and computes the header hash from this data.
blockHeight - Variable in class com.norswap.nanoeth.Context
The current block height.
Blocks - Class in com.norswap.nanoeth.blocks
A database that enables retrieving blocks by hash.
BlockValidity - Class in com.norswap.nanoeth.blocks
The block validity is a wrapper for BlockValidityStatus which includes additional information if the block is invalid.
BlockValidityStatus - Enum in com.norswap.nanoeth.blocks
The validity status of a block, which is either valid (BlockValidityStatus.VAL_VALID), or another status indicating why the block is invalid.
BloomFilter - Class in com.norswap.nanoeth.receipts
A bloom filter associated with one or multiple LogEntry.
BloomFilter() - Constructor for class com.norswap.nanoeth.receipts.BloomFilter
Creates a new empty bloom filter.
BloomFilter(byte[]) - Constructor for class com.norswap.nanoeth.receipts.BloomFilter
 
BloomFilter(String) - Constructor for class com.norswap.nanoeth.receipts.BloomFilter
Creates a bloom filter from a hex string (e.g.
BOUNCY_CASTLE_KEY_PROVIDER - Static variable in class com.norswap.nanoeth.utils.Crypto
 
branch - Variable in class com.norswap.nanoeth.trees.patricia.MerkleProof
Merkle tree nodes (in abridged form) on the branch from the root to the node (leaf or branch) that contains the value associated with the key, or to the deepest node that would have to be modified in order to insert a value for key (if MerkleProof.value is null).
branchNode(Pair<Nibbles, PatriciaNode>...) - Method in class com.norswap.nanoeth.trees.patricia.memory.TreeNodeStore
 
branchNode(Pair<Nibbles, PatriciaNode>...) - Method in interface com.norswap.nanoeth.trees.patricia.NodeStore
Returns a new branch node with the give children.
branchNode(Pair<Nibbles, PatriciaNode>...) - Method in class com.norswap.nanoeth.trees.patricia.store.MapNodeStore
 
BranchStep - Class in com.norswap.nanoeth.trees.patricia
BranchStep(PatriciaNode, PatriciaNode, int, int) - Constructor for class com.norswap.nanoeth.trees.patricia.BranchStep
 
byteAt(int) - Method in class com.norswap.nanoeth.rlp.RLP
Returns the byte at the given index.
bytes - Variable in class com.norswap.nanoeth.data.Address
The big-endian representation of the address.
bytes - Variable in class com.norswap.nanoeth.data.Hash
The bytes making up the hash.
bytes - Variable in class com.norswap.nanoeth.data.StorageKey
The 32-bytes big-endian representation of the storage key.
bytes - Variable in class com.norswap.nanoeth.receipts.LogTopic
The bytes making up the hash.
bytes() - Method in class com.norswap.nanoeth.rlp.RLP
Returns the byte array that this object represents.
bytes() - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
Returns a copy of this nibble sequence as an array of bytes.
bytes(byte...) - Static method in class com.norswap.nanoeth.rlp.RLP
Creates a new RLP object representing the given byte array.
bytes(int) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Returns a byte array of size byteSize(value) encoding value in big-endian.
byteSize(int) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Returns the minimum number of bytes needed to store the integer.
bytesPadded(byte[], int) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Pads the given byte array to the given length by adding zeroes at the start.
bytesPadded(BigInteger, int) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Returns the big-endian encoding of value in bytes padded (at the start) with zeroes so that the length of the output is at least length.
bytesWithoutSign(BigInteger) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Returns the big-endian encoding of value in bytes, excluding any byte that would be included solely to signify the sign of the value.
ByteUtils - Class in com.norswap.nanoeth.utils
Utilities dealing with byte values, the byte-array encoding of larger numbers, as well as byte arrays in general.
BYZANTIUM - com.norswap.nanoeth.versions.EthereumVersion
 
BYZANTIUM_START - Static variable in class com.norswap.nanoeth.Config
 

C

canonicalizeS(Natural) - Static method in class com.norswap.nanoeth.signature.SignatureUtils
Canonicalizes the s signature value if needed.
cap - Variable in class com.norswap.nanoeth.trees.patricia.PatriciaNode
Memoization for PatriciaNode.cap().
cap - Variable in exception com.norswap.nanoeth.trees.patricia.store.MissingNode
Cap value of the missing node.
cap() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaNode
This method implements the node cap function n (equation 194 in the yellowpaper).
chainId - Variable in class com.norswap.nanoeth.transactions.UnsignedTransaction
The ID of the chain on which this transaction was sent (1 for Ethereum mainnet for instance).
child - Variable in class com.norswap.nanoeth.trees.patricia.BranchStep
 
child - Variable in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaExtensionNode
 
child(NodeStore) - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaExtensionNode
 
child(NodeStore) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaExtensionNode
Returns the child node of this extension node.
child(NodeStore) - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaExtensionNode
 
childAndValueCount() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
Returns the number of children held by this node, + 1 if PatriciaBranchNode.value() is set.
childAt(NodeStore, int) - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaBranchNode
 
childAt(NodeStore, int) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
Returns the child node with the given starting nibble, or null if there is no such child.
childAt(NodeStore, int) - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaBranchNode
 
childCap() - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaExtensionNode
 
childCap() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaExtensionNode
Returns the cap value of PatriciaExtensionNode.child(NodeStore).
childCap() - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaExtensionNode
 
childCapAt(int) - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaBranchNode
 
childCapAt(int) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
Returns the cap value of PatriciaBranchNode.childAt(NodeStore, int) with parameter nibble, or null if there is no such child.
childCapAt(int) - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaBranchNode
 
childrenCaps - Variable in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaBranchNode
The cap values (i.e.
clear() - Method in class com.norswap.nanoeth.blocks.Blocks
Empties the database.
coinbase - Variable in class com.norswap.nanoeth.blocks.BlockHeader
Address that will receive the block reward (aka "beneficiary", aka "miner's address").
collectEntries(NodeStore, Nibbles, Map<byte[], byte[]>) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
 
collectEntries(NodeStore, Nibbles, Map<byte[], byte[]>) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaExtensionNode
 
collectEntries(NodeStore, Nibbles, Map<byte[], byte[]>) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
collectEntries(NodeStore, Nibbles, Map<byte[], byte[]>) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaNode
Adds all the entries store under this node to map, given that the prefix to reach this node is given by prefix.
com.norswap.nanoeth - package com.norswap.nanoeth
 
com.norswap.nanoeth.annotations - package com.norswap.nanoeth.annotations
 
com.norswap.nanoeth.blocks - package com.norswap.nanoeth.blocks
 
com.norswap.nanoeth.chain - package com.norswap.nanoeth.chain
 
com.norswap.nanoeth.data - package com.norswap.nanoeth.data
 
com.norswap.nanoeth.receipts - package com.norswap.nanoeth.receipts
 
com.norswap.nanoeth.rlp - package com.norswap.nanoeth.rlp
 
com.norswap.nanoeth.signature - package com.norswap.nanoeth.signature
 
com.norswap.nanoeth.transactions - package com.norswap.nanoeth.transactions
 
com.norswap.nanoeth.trees.patricia - package com.norswap.nanoeth.trees.patricia
 
com.norswap.nanoeth.trees.patricia.memory - package com.norswap.nanoeth.trees.patricia.memory
 
com.norswap.nanoeth.trees.patricia.store - package com.norswap.nanoeth.trees.patricia.store
 
com.norswap.nanoeth.utils - package com.norswap.nanoeth.utils
 
com.norswap.nanoeth.versions - package com.norswap.nanoeth.versions
 
compose() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
 
compose() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaExtensionNode
 
compose() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
compose() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaNode
This method implements the structural composition function c (equation 197 and previous in the yellowpaper).
computeDifficulty(Natural, BlockHeader) - Static method in class com.norswap.nanoeth.blocks.Difficulty
Compute the canonical difficulty of a block arriving at the given timestamp, with the given parent block header.
concat(byte[]...) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Returns the concatenation of the byte arrays.
concat(Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
 
Config - Class in com.norswap.nanoeth
Configurable values.
CONSTANTINOPLE - com.norswap.nanoeth.versions.EthereumVersion
 
CONSTANTINOPLE_START - Static variable in class com.norswap.nanoeth.Config
 
contains(int) - Method in enum com.norswap.nanoeth.versions.EthereumVersion
Returns true iff the given block height is "within" this version: after or on its start block, but before the start block of the next version.
contains(Natural) - Method in enum com.norswap.nanoeth.versions.EthereumVersion
Returns true if the given block height is "within" this version: after or on its start block, but before the start block of the next version.
Context - Class in com.norswap.nanoeth
A holder for values that may change during execution, but we don't want to be constantly passing up and down the call stack.
CONTEXT - Static variable in class com.norswap.nanoeth.Context
A holder for values that may change during execution, but we don't want to be constantly passing up and down the call stack.
copyOfSizedRange(byte[], int, int) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Just like Arrays.copyOfRange(byte[], int, int), but allows passing a size instead of an end index.
Crypto - Class in com.norswap.nanoeth.utils
Cryptography-related utilities and constants.

D

DAO_FORK - com.norswap.nanoeth.versions.EthereumVersion
 
DAO_FORK_START - Static variable in class com.norswap.nanoeth.Config
 
data - Variable in class com.norswap.nanoeth.receipts.LogEntry
Arbitrary data attached to the entry.
DB - Static variable in class com.norswap.nanoeth.blocks.Blocks
Singleton blocks DB instance.
decode(byte[]) - Static method in class com.norswap.nanoeth.rlp.RLP
Decodes the given byte sequence to an RLP layout.
decode(String) - Static method in class com.norswap.nanoeth.rlp.RLP
Decodes the given hex string (e.g.
difficulty - Variable in class com.norswap.nanoeth.blocks.BlockHeader
The difficult level of the block, calculated from the previous' block difficulty level and the BlockHeader.timestamp (cf.
Difficulty - Class in com.norswap.nanoeth.blocks
 
divide(long) - Method in class com.norswap.nanoeth.data.Natural
 
dropFirst(int) - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
Return a suffix of this nibble sequence, shaving off the first n nibbles.
dropLast(int) - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
Return a prefix of this nibble sequence, dropping the last n nibbles.

E

EMPTY - Static variable in class com.norswap.nanoeth.data.Address
The address the yellow paper denotes as "∅" and is represent by a zero-length byte sequence, unlike all other addresses which are 20-bytes long.
EMPTY - Static variable in class com.norswap.nanoeth.transactions.AccessList
An empty access list.
EMPTY - Static variable in class com.norswap.nanoeth.trees.patricia.Nibbles
 
EMPTY_SEQ_HASH - Static variable in class com.norswap.nanoeth.data.Hash
Hash of the empty RLP sequence.
EMPTY_TREE_ROOT - Static variable in class com.norswap.nanoeth.trees.patricia.PatriciaTree
Merkle root of an empty tree, which the Keccak hash of an empty byte sequence.
encode() - Method in class com.norswap.nanoeth.rlp.RLP
Returns the binary RLP encoding of this object.
encoded(byte[]) - Static method in class com.norswap.nanoeth.rlp.RLP
Creates a new RLP item holding an already-encoded RLP item (either a sequence or a byte array).
encodesBytes(byte[]) - Static method in class com.norswap.nanoeth.rlp.RLP
Does the given RLP encoding encode a byte array?
encodesSequence(byte[]) - Static method in class com.norswap.nanoeth.rlp.RLP
Does the given RLP encoding encode an item sequence?
ENVELOPE_TYPE_EIP_1559 - Static variable in class com.norswap.nanoeth.transactions.TransactionEnvelopeType
EIP-2718 envelope type introduced in EIP-1559 (replaces gas price by gas fee and gas tips).
ENVELOPE_TYPE_EIP_2930 - Static variable in class com.norswap.nanoeth.transactions.TransactionEnvelopeType
EIP-2718 envelope type introduced in EIP-2930 (access lists).
ENVELOPE_TYPE_NONE - Static variable in class com.norswap.nanoeth.transactions.TransactionEnvelopeType
Used to signify that a transaction does not have an EIP-2718 envelope type.
equals(Object) - Method in class com.norswap.nanoeth.blocks.Block
 
equals(Object) - Method in class com.norswap.nanoeth.blocks.BlockHeader
 
equals(Object) - Method in class com.norswap.nanoeth.blocks.BlockValidity
 
equals(Object) - Method in class com.norswap.nanoeth.data.Address
 
equals(Object) - Method in class com.norswap.nanoeth.data.Hash
 
equals(Object) - Method in class com.norswap.nanoeth.data.StorageKey
 
equals(Object) - Method in class com.norswap.nanoeth.receipts.BloomFilter
 
equals(Object) - Method in class com.norswap.nanoeth.receipts.LogTopic
 
equals(Object) - Method in class com.norswap.nanoeth.rlp.RLP
 
equals(Object) - Method in class com.norswap.nanoeth.signature.Signature
 
equals(Object) - Method in class com.norswap.nanoeth.transactions.AccessList
 
equals(Object) - Method in class com.norswap.nanoeth.transactions.Transaction
 
equals(Object) - Method in class com.norswap.nanoeth.transactions.UnsignedTransaction
 
equals(Object) - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaBranchNode
 
equals(Object) - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaExtensionNode
 
equals(Object) - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
 
equals(Object) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
equals(Object) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaTree
 
equals(Object) - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaBranchNode
 
equals(Object) - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaExtensionNode
 
equals(Object) - Method in class com.norswap.nanoeth.utils.Pair
 
EthereumVersion - Enum in com.norswap.nanoeth.versions
Enumeration of Ethereum's "versions": the hard forks that were rolled out during the chain's history.
EthKeyPair - Class in com.norswap.nanoeth.signature
A SECP-256k1 key pair that can be used to sign transactions.
EthKeyPair() - Constructor for class com.norswap.nanoeth.signature.EthKeyPair
Generate a new key pair.
EthKeyPair(String) - Constructor for class com.norswap.nanoeth.signature.EthKeyPair
Create a key pair from the hex string representation (e.g.
EthKeyPair(BigInteger) - Constructor for class com.norswap.nanoeth.signature.EthKeyPair
Create a key pair from an existing private key (regenerating the public key).
EthKeyPair(ECPoint, BigInteger) - Constructor for class com.norswap.nanoeth.signature.EthKeyPair
Create a key pair from an existing public and private key.
extensionNode(Nibbles, PatriciaBranchNode) - Method in class com.norswap.nanoeth.trees.patricia.memory.TreeNodeStore
 
extensionNode(Nibbles, PatriciaBranchNode) - Method in interface com.norswap.nanoeth.trees.patricia.NodeStore
Returns a new extension node with the given key fragment and child node.
extensionNode(Nibbles, PatriciaBranchNode) - Method in class com.norswap.nanoeth.trees.patricia.store.MapNodeStore
 
extraData - Variable in class com.norswap.nanoeth.blocks.BlockHeader
An arbitrary byte array containing data relevant to this block.

F

findFormat(int, Natural) - Static method in enum com.norswap.nanoeth.transactions.TransactionFormat
Determines the transaction format from the envelope type (use TransactionEnvelopeType.ENVELOPE_TYPE_NONE if there is envelope type) and the signature v value.
forBranch(byte[], Consumer<BranchStep>) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaTree
Calls f with every node on the branch for keySuffix (represented by a step, where this branch is the node path from this node towards the node that holds the value associated to the key suffix, or to the deepest node that would have to be modified in order to associated a value with the key suffix.
format - Variable in class com.norswap.nanoeth.transactions.UnsignedTransaction
The original format of the transaction before normalization.
from(RLP) - Static method in class com.norswap.nanoeth.blocks.Block
Parses a RLP sequence into a block.
from(RLP) - Static method in class com.norswap.nanoeth.blocks.BlockHeader
Parses a RLP sequence into a block header.
from(RLP) - Static method in class com.norswap.nanoeth.transactions.Transaction
Parses a RLP sequence into a transaction.
from(String) - Static method in class com.norswap.nanoeth.data.Address
Creates a natural from a hex-string (e.g.
fromHexPrefix(byte[]) - Static method in class com.norswap.nanoeth.trees.patricia.Nibbles
Returns a Nibbles object that represent the hex-prefix encoded nibble sequence, as per appendix C of the yellowpaper.
FRONTIER - com.norswap.nanoeth.versions.EthereumVersion
 
FRONTIER_START - Static variable in class com.norswap.nanoeth.Config
 
FRONTIER_THAWING - com.norswap.nanoeth.versions.EthereumVersion
 
FRONTIER_THAWING_START - Static variable in class com.norswap.nanoeth.Config
 
fst - Variable in class com.norswap.nanoeth.utils.Pair
 

G

gasLimit - Variable in class com.norswap.nanoeth.blocks.BlockHeader
Current maximum amount of gas usable per block.
gasLimit - Variable in class com.norswap.nanoeth.transactions.UnsignedTransaction
Maximum amount of gas the sender is willing to spend on this transaction.
gasUsed - Variable in class com.norswap.nanoeth.blocks.BlockHeader
The amount of gas used in this block.
GENESIS - Static variable in class com.norswap.nanoeth.Config
The genesis block.
get(int) - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
Returns the nibble at the given index.
get(Hash) - Method in class com.norswap.nanoeth.blocks.Blocks
Returns the block with the given hash, or null if no such block is known.
getByte(RLP, int) - Static method in class com.norswap.nanoeth.rlp.RLPParsing
Parses the i-th item of the sequence, which should be a byte array of size 1, into a unsigned byte.
getBytes(RLP) - Static method in class com.norswap.nanoeth.rlp.RLPParsing
Same as RLP.bytes() but converts an (unchecked) IllegalRLPAccess to a (checked) RLPParsingException.
getBytes(RLP, int) - Static method in class com.norswap.nanoeth.rlp.RLPParsing
Retrieves the i-th item of the sequence, and verifies that it is a byte array with a valid size.
getHeader(Hash) - Method in class com.norswap.nanoeth.blocks.Blocks
 
getInt64(RLP, int) - Static method in class com.norswap.nanoeth.rlp.RLPParsing
Parses the i-th item of the sequence, which should be a 8-byte array, into a 64-bit integer.
getItems(RLP) - Static method in class com.norswap.nanoeth.rlp.RLPParsing
Same as RLP.items() but converts an (unchecked) IllegalRLPAccess to a (checked) RLPParsingException.
getNode(byte[]) - Method in class com.norswap.nanoeth.trees.patricia.memory.TreeNodeStore
 
getNode(byte[]) - Method in interface com.norswap.nanoeth.trees.patricia.NodeStore
Return a node from its cap value, or null if no such node exists.
getNode(byte[]) - Method in class com.norswap.nanoeth.trees.patricia.store.MapNodeStore
 
greater(long) - Method in class com.norswap.nanoeth.data.Natural
 
greaterSame(long) - Method in class com.norswap.nanoeth.data.Natural
 

H

hasChildAt(int) - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaBranchNode
 
hasChildAt(int) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
Returns true only if the branch node has a child with the given starting nibble.
hasChildAt(int) - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaBranchNode
 
hash() - Method in class com.norswap.nanoeth.blocks.BlockHeader
Hash of all the other data in the header.
hash() - Method in class com.norswap.nanoeth.rlp.RLP
Returns the Keccak hash of the the encoding of this object.
hash() - Method in class com.norswap.nanoeth.transactions.Transaction
Returns the transaction hash.
Hash - Class in com.norswap.nanoeth.data
Represents a 256-bit (32 bytes) Keccak hash.
Hash(byte[]) - Constructor for class com.norswap.nanoeth.data.Hash
 
Hash(String) - Constructor for class com.norswap.nanoeth.data.Hash
Creates a hash from a hex string (e.g.
hashCode() - Method in class com.norswap.nanoeth.blocks.Block
 
hashCode() - Method in class com.norswap.nanoeth.blocks.BlockHeader
 
hashCode() - Method in class com.norswap.nanoeth.blocks.BlockValidity
 
hashCode() - Method in class com.norswap.nanoeth.data.Address
 
hashCode() - Method in class com.norswap.nanoeth.data.Hash
 
hashCode() - Method in class com.norswap.nanoeth.data.StorageKey
 
hashCode() - Method in class com.norswap.nanoeth.receipts.BloomFilter
 
hashCode() - Method in class com.norswap.nanoeth.receipts.LogTopic
 
hashCode() - Method in class com.norswap.nanoeth.rlp.RLP
 
hashCode() - Method in class com.norswap.nanoeth.signature.Signature
 
hashCode() - Method in class com.norswap.nanoeth.transactions.AccessList
 
hashCode() - Method in class com.norswap.nanoeth.transactions.Transaction
 
hashCode() - Method in class com.norswap.nanoeth.transactions.UnsignedTransaction
 
hashCode() - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaBranchNode
 
hashCode() - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaExtensionNode
 
hashCode() - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
 
hashCode() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
hashCode() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaTree
 
hashCode() - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaBranchNode
 
hashCode() - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaExtensionNode
 
hashCode() - Method in class com.norswap.nanoeth.utils.Pair
 
Hashing - Class in com.norswap.nanoeth.utils
Utilities to calculate hash values.
hasUncles() - Method in class com.norswap.nanoeth.blocks.BlockHeader
Return true iff the BlockHeader.uncleHash is not the hash of the empty sequence.
header - Variable in class com.norswap.nanoeth.blocks.Block
 
hexDigitToByte(char) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Converts a hex digit (in 0-9, a-f or A-F) to its numeric value.
hexPrefix(boolean) - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
Returns the hex-prefix encoding of the nibble sequence, as per appendix C of the yellowpaper.
hexStringToBytes(String) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Converts a hex-string (e.g.
hexStringToBytes(String, int) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Converts a hex-string (e.g.
HOMESTEAD - com.norswap.nanoeth.versions.EthereumVersion
 
HOMESTEAD_START - Static variable in class com.norswap.nanoeth.Config
 

I

IllegalRLPAccess - Exception in com.norswap.nanoeth.rlp
Indicates an illegal access in an RLP object: trying to access a sequence when the object represents a byte array or encoding, trying to access a byte array when the object represents a sequence or encoding, or trying to access a byte or sub-sequence item that is out of bounds.
IllegalRLPAccess(String) - Constructor for exception com.norswap.nanoeth.rlp.IllegalRLPAccess
 
IllegalSignature - Exception in com.norswap.nanoeth.signature
Indicates that a signature is invalid: some of its parameters do not satisfy the signature validity constraints.
IllegalSignature(String) - Constructor for exception com.norswap.nanoeth.signature.IllegalSignature
 
inflate() - Method in class com.norswap.nanoeth.rlp.RLP
If this object is an encoded RLP item, returns a non-encoded version, otherwise returns this object.
intToHexDigit(int) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Converts an integer in [0, 15] into an hex digit (0..9 a..f).
isByte(int) - Static method in class com.norswap.nanoeth.utils.ByteUtils
True if the value is in the signed byte range [-128, 127] or if it is in [128, 255] (in which case casting it to a byte yield a negative value which can be used to represent an unsigned byte value).
isBytes() - Method in class com.norswap.nanoeth.rlp.RLP
True iff this object represents a byte array.
isContractCreation() - Method in class com.norswap.nanoeth.transactions.UnsignedTransaction
A transaction is a contract creation if its destination address is empty.
isEncoded() - Method in class com.norswap.nanoeth.rlp.RLP
True iff this object represents an already-encoded RLP item.
isFuture() - Method in enum com.norswap.nanoeth.versions.EthereumVersion
Returns true iff the current block height (Context.blockHeight) is lower than the initial block height (startBlock) of this version.
isPast() - Method in enum com.norswap.nanoeth.versions.EthereumVersion
Returns true iff the current block height (Context.blockHeight) is higher or equal than the initial block height (startBlock) of this version.
isSequence() - Method in class com.norswap.nanoeth.rlp.RLP
True iff this object represents a sequence of sub-items.
ISTANBUL - com.norswap.nanoeth.versions.EthereumVersion
 
ISTANBUL_START - Static variable in class com.norswap.nanoeth.Config
 
itemAt(int) - Method in class com.norswap.nanoeth.rlp.RLP
Returns the sub-item at the given index.
items - Variable in class com.norswap.nanoeth.transactions.AccessList
A collection of addresses along with associated storage keys within that account's storage tree.
items() - Method in class com.norswap.nanoeth.rlp.RLP
Returns an array containing the sub-items that this object represents.

K

keccak(byte[]) - Static method in class com.norswap.nanoeth.utils.Hashing
Return the Keccak (SHA-3 draft) hash of the input, which has a size of 32 bytes.
key - Variable in class com.norswap.nanoeth.trees.patricia.MerkleProof
Key being proven.
keyFragment - Variable in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaExtensionNode
 
keyFragment() - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaExtensionNode
 
keyFragment() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaExtensionNode
Returns the key fragment associated with this node.
keyFragment() - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaExtensionNode
 
keys - Variable in class com.norswap.nanoeth.transactions.AccessList.AccessListItem
 
keySuffix - Variable in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 

L

leafNode(Nibbles, byte[]) - Method in interface com.norswap.nanoeth.trees.patricia.NodeStore
Creates a new leaf node with the given key suffix and value.
length() - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
Return the number of nibbles represented by this object.
LogEntry - Class in com.norswap.nanoeth.receipts
A log entry generated during contract execution.
LogEntry(Address, LogTopic[], byte[]) - Constructor for class com.norswap.nanoeth.receipts.LogEntry
 
logger - Variable in class com.norswap.nanoeth.receipts.LogEntry
Address that generated this log.
logsBloom - Variable in class com.norswap.nanoeth.blocks.BlockHeader
The Bloom filter composed from indexable information (logger address and log topics) contained in each log entry from the receipt of each transaction in the transactions list.
LogTopic - Class in com.norswap.nanoeth.receipts
Represents a 256-bit (32 bytes) log topic.
LogTopic(byte[]) - Constructor for class com.norswap.nanoeth.receipts.LogTopic
 
LogTopic(String) - Constructor for class com.norswap.nanoeth.receipts.LogTopic
Creates a log topic from a hex string (e.g.
LONDON - com.norswap.nanoeth.versions.EthereumVersion
 
LONDON_START - Static variable in class com.norswap.nanoeth.Config
 
lookup(byte[]) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaTree
Lookup the value associated with the given key, or null if no such value exists.
lookup(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
 
lookup(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaExtensionNode
 
lookup(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
lookup(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaNode
Lookup the entry with the given key suffix, the suffix of a sequence of nibbles, where the missing prefix was used to reach the present node.
lower(long) - Method in class com.norswap.nanoeth.data.Natural
 
lowerSame(long) - Method in class com.norswap.nanoeth.data.Natural
 

M

map(T[], IntFunction<R[]>, Function<T, R>) - Static method in class com.norswap.nanoeth.utils.Utils
Returns an array obtained by applying the function f to each item in array.
MapNodeStore - Class in com.norswap.nanoeth.trees.patricia.store
Key-value store implementation that stores key-values in an in-memory map (dictionary).
MapNodeStore() - Constructor for class com.norswap.nanoeth.trees.patricia.store.MapNodeStore
 
mapThrowing(T[], IntFunction<R[]>, Utils.ThrowingFunction<T, R>) - Static method in class com.norswap.nanoeth.utils.Utils
Returns an array obtained by applying the function f to each item in array.
MAX_UNCLE_DEGREE - Static variable in class com.norswap.nanoeth.blocks.Block
Maximum uncle degree (e.g.
MAX_UNCLES - Static variable in class com.norswap.nanoeth.blocks.Block
Maximum number of uncle that can be included in the block, which is 2, as per section 11.1 of the yellowpaper.
maxFeePerGas - Variable in class com.norswap.nanoeth.transactions.UnsignedTransaction
Max total amount of Wei the sender is ready to pay per unit of gas consumed.
maxPriorityFeePerGas - Variable in class com.norswap.nanoeth.transactions.UnsignedTransaction
Max amount of Wei the sender is ready to pay as a priority fee ("tip") to the miner, per unit of gas consumed.
mayContain(Address) - Method in class com.norswap.nanoeth.receipts.BloomFilter
Indicates if the log entries associated to this bloom filter may have been been logged by the given address.
mayContain(LogTopic) - Method in class com.norswap.nanoeth.receipts.BloomFilter
Indicates if some of the log entries associated to this bloom filter may contain the given topic.
MemPatriciaBranchNode - Class in com.norswap.nanoeth.trees.patricia.memory
A branch node in the in-memory patricia tree.
MemPatriciaBranchNode(byte[], PatriciaNode[]) - Constructor for class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaBranchNode
 
MemPatriciaExtensionNode - Class in com.norswap.nanoeth.trees.patricia.memory
An extension node in the in-memory patricia tree.
MemPatriciaExtensionNode(Nibbles, PatriciaBranchNode) - Constructor for class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaExtensionNode
 
MerkleProof - Class in com.norswap.nanoeth.trees.patricia
A proof that a key-value pair belongs to a tree.
MerkleProof(byte[], byte[], PatriciaNode[]) - Constructor for class com.norswap.nanoeth.trees.patricia.MerkleProof
 
merkleRoot() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaNode
Returns the Merkle root of the Merkle tree rooted at this node.
merkleRoot() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaTree
Returns the Merkle root of the tree, i.e.
MerkleRoot - Class in com.norswap.nanoeth.data
A Hash that is marked as being a Merkle root.
MerkleRoot(byte[]) - Constructor for class com.norswap.nanoeth.data.MerkleRoot
 
MerkleRoot(Hash) - Constructor for class com.norswap.nanoeth.data.MerkleRoot
 
MerkleRoot(String) - Constructor for class com.norswap.nanoeth.data.MerkleRoot
Creates a merkle root from a hex string (e.g.
MissingNode - Exception in com.norswap.nanoeth.trees.patricia.store
Thrown when a node is missing from a store backing a patricia tree, i.e.
MissingNode(byte[]) - Constructor for exception com.norswap.nanoeth.trees.patricia.store.MissingNode
 
mixHash - Variable in class com.norswap.nanoeth.blocks.BlockHeader
A hash which, combined with the BlockHeader.nonce, proves that a sufficient amount of computation has been carried out on this block.
mod(long) - Method in class com.norswap.nanoeth.data.Natural
 
MUIR_GLACIER - com.norswap.nanoeth.versions.EthereumVersion
 
MUIR_GLACIER_START - Static variable in class com.norswap.nanoeth.Config
 
multiply(long) - Method in class com.norswap.nanoeth.data.Natural
 

N

Natural - Class in com.norswap.nanoeth.data
Represents an arbitrary-length natural (positive) integer.
Natural(byte[]) - Constructor for class com.norswap.nanoeth.data.Natural
Constructs a natural from a big-endian byte array, which will be interpreted as a positive integer (e.g.
Natural(long) - Constructor for class com.norswap.nanoeth.data.Natural
 
Natural(String) - Constructor for class com.norswap.nanoeth.data.Natural
Creates a natural from a hex-string (e.g.
Natural(BigInteger) - Constructor for class com.norswap.nanoeth.data.Natural
 
Nibbles - Class in com.norswap.nanoeth.trees.patricia
Represent a sequence of nibbles (half-bytes, 4-bit values), which are used as key fragments in Patricia tree lookups.
Nibbles(byte) - Constructor for class com.norswap.nanoeth.trees.patricia.Nibbles
Construct a nibble sequence containing a single nibble.
Nibbles(byte[]) - Constructor for class com.norswap.nanoeth.trees.patricia.Nibbles
 
Nibbles(byte[], int, int) - Constructor for class com.norswap.nanoeth.trees.patricia.Nibbles
 
nibblesLeft - Variable in class com.norswap.nanoeth.trees.patricia.BranchStep
 
node - Variable in class com.norswap.nanoeth.trees.patricia.BranchStep
 
NodeStore - Interface in com.norswap.nanoeth.trees.patricia
Interface for a node store underlying a modified Merkle patricia tree.
nonce - Variable in class com.norswap.nanoeth.blocks.BlockHeader
A 64-bit scalar value which, combined with the BlockHeader.mixHash, proves that a sufficient amount of computation has been carried out on this block.
nonce - Variable in class com.norswap.nanoeth.transactions.UnsignedTransaction
Sender nonce at the time the transaction was sent -- which is equal to the number of transaction the sender sent before that point.
Nullable - Annotation Type in com.norswap.nanoeth.annotations
Indicates that the parameter can take a null value.
number - Variable in class com.norswap.nanoeth.blocks.BlockHeader
The number of ancestor blocks (aka "height").

O

of(A, B) - Static method in class com.norswap.nanoeth.utils.Pair
 
of(BlockValidityStatus) - Static method in class com.norswap.nanoeth.blocks.BlockValidity
 
of(BlockValidityStatus, BlockHeader) - Static method in class com.norswap.nanoeth.blocks.BlockValidity
 

P

Pair<A,​B> - Class in com.norswap.nanoeth.utils
Simple object pair.
parentHash - Variable in class com.norswap.nanoeth.blocks.BlockHeader
The BlockHeader.hash of the parent block.
parse(RLP) - Static method in class com.norswap.nanoeth.data.Address
 
parse(RLP) - Static method in class com.norswap.nanoeth.data.Hash
 
parse(RLP) - Static method in class com.norswap.nanoeth.data.MerkleRoot
 
parse(RLP) - Static method in class com.norswap.nanoeth.data.Natural
Parses a natural from the given RLP data.
parse(RLP) - Static method in class com.norswap.nanoeth.receipts.BloomFilter
 
parse(RLP) - Static method in class com.norswap.nanoeth.transactions.AccessList
 
parse(RLP) - Static method in class com.norswap.nanoeth.trees.patricia.PatriciaNode
Parses a node from a RLP object in the format returned by PatriciaNode.compose().
PatriciaBranchNode - Class in com.norswap.nanoeth.trees.patricia
Abstract base classes for branch nodes.
PatriciaBranchNode() - Constructor for class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
 
PatriciaExtensionNode - Class in com.norswap.nanoeth.trees.patricia
A an extension node in the patricia tree represents a shared sequence of nibbles between multiples keys (a "key fragment").
PatriciaExtensionNode() - Constructor for class com.norswap.nanoeth.trees.patricia.PatriciaExtensionNode
 
PatriciaLeafNode - Class in com.norswap.nanoeth.trees.patricia
A leaf in the patrica tree, which store the suffix of the key and its associated value.
PatriciaLeafNode(Nibbles, byte[]) - Constructor for class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
PatriciaNode - Class in com.norswap.nanoeth.trees.patricia
Abstract base class for Modified Merkle Patricia Tree nodes, to be compatible with PatriciaTree.
PatriciaNode() - Constructor for class com.norswap.nanoeth.trees.patricia.PatriciaNode
 
PatriciaTree - Class in com.norswap.nanoeth.trees.patricia
Implementation of the Modified Merkle Patricia Tree, as per appendix D of the yellowpaper.
PatriciaTree(NodeStore) - Constructor for class com.norswap.nanoeth.trees.patricia.PatriciaTree
Creates an empty patricia tree (root = null).
PatriciaTree(NodeStore, PatriciaNode) - Constructor for class com.norswap.nanoeth.trees.patricia.PatriciaTree
Creates a patricia tree with the given root node.
payload - Variable in class com.norswap.nanoeth.transactions.UnsignedTransaction
Either the EVM code for account initialisation when deploying a contract (yellowpaper: Ti), or the input data when sending a message call (yellowpaper: Td).
PETERSBURG - com.norswap.nanoeth.versions.EthereumVersion
 
PETERSBURG_START - Static variable in class com.norswap.nanoeth.Config
 
plainRLP() - Method in class com.norswap.nanoeth.transactions.Transaction
Returns the RLP encoding of this transaction, without the TransactionEnvelopeType (if any).
pow(int) - Method in class com.norswap.nanoeth.data.Natural
 
prefix(int) - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
Return a prefix of this nibble sequence, keeping the first n nibbles.
prepend(Nibbles, PatriciaNode) - Method in interface com.norswap.nanoeth.trees.patricia.NodeStore
Returns a new node that corresponds to the node that the given nibbles prepended.
ProofOfWork - Class in com.norswap.nanoeth.blocks
 
prove(byte[]) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaTree
Returns a Merkle proof for the given key, either proving its association to its value, or the absence of value.
publicKey - Variable in class com.norswap.nanoeth.signature.EthKeyPair
 

R

r - Variable in class com.norswap.nanoeth.signature.Signature
 
Randomness - Class in com.norswap.nanoeth.utils
Utilities related to random number generation.
receiptsRoot - Variable in class com.norswap.nanoeth.blocks.BlockHeader
The Merkle root of the receipts list of the block.
recoverPublicKey(byte[]) - Method in class com.norswap.nanoeth.signature.Signature
Recover the public key from the signature of the hash of the given message, as specified in SEC1 §4.1.6.
recoverPublicKeyWithoutHashing(byte[]) - Method in class com.norswap.nanoeth.signature.Signature
Recover the public key from the signature of the given message, as specified in SEC1 §4.1.6.
recoverSender() - Method in class com.norswap.nanoeth.transactions.Transaction
Returns the address of the transaction sender.
register(Block) - Method in class com.norswap.nanoeth.blocks.Blocks
Registers the given block in the block DB.
remove(byte[]) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaTree
Returns the transformed tree, after removing the entry for the given key (if any).
remove(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
 
remove(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaExtensionNode
 
remove(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
remove(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaNode
Returns the transformed node, after removing the entry for the given key suffix (if any), or returns null if the removal of the key means that the node itself must disappear.
removeNode(PatriciaNode) - Method in class com.norswap.nanoeth.trees.patricia.memory.TreeNodeStore
 
removeNode(PatriciaNode) - Method in interface com.norswap.nanoeth.trees.patricia.NodeStore
Removes the node from the store.
removeNode(PatriciaNode) - Method in class com.norswap.nanoeth.trees.patricia.store.MapNodeStore
 
reset() - Method in class com.norswap.nanoeth.Context
Resets the context to default values.
Retained - Annotation Type in com.norswap.nanoeth.annotations
Indicates that the parameter is a mutable object, and that it is potentially stored somewhere as a result of calling the function, and that care should thus be taken when mutating that object.
RLP - Class in com.norswap.nanoeth.rlp
An object that can be encoded in RLP format, or decoded from a byte array in RLP format.
RLP_EMPTY_BYTE_ARRAY - Static variable in class com.norswap.nanoeth.rlp.RLP
RLP-encoding of an empty RLP byte array, which is sometimes used to represent absent values.
rlpEncode() - Method in interface com.norswap.nanoeth.rlp.RLPLayoutable
Return the RLP encoding of the object, which is rlpLayout().encode().
rlpHexString() - Method in interface com.norswap.nanoeth.rlp.RLPLayoutable
Returns the hex-string representation of the rlp encoding of the object, including leading 0 if any, as per ByteUtils.toFullHexString(byte[]).
rlpLayout() - Method in class com.norswap.nanoeth.blocks.Block
Returns the RLP representation of this block, whose binary encoding is used to transmit the block over the network.
rlpLayout() - Method in class com.norswap.nanoeth.blocks.BlockHeader
Returns the RLP representation of this block header, which is stored in the block (itself RLP-encoded) when circulated over the network.
rlpLayout() - Method in class com.norswap.nanoeth.data.Address
 
rlpLayout() - Method in class com.norswap.nanoeth.data.Hash
 
rlpLayout() - Method in class com.norswap.nanoeth.data.Natural
Natural are encoded in RLP using only as many bytes as necessary, with no leading 0.
rlpLayout() - Method in class com.norswap.nanoeth.data.StorageKey
 
rlpLayout() - Method in class com.norswap.nanoeth.receipts.BloomFilter
 
rlpLayout() - Method in class com.norswap.nanoeth.rlp.RLP
 
rlpLayout() - Method in interface com.norswap.nanoeth.rlp.RLPLayoutable
Returns the RLP layout for the object.
rlpLayout() - Method in class com.norswap.nanoeth.transactions.AccessList
 
rlpLayout() - Method in class com.norswap.nanoeth.transactions.Transaction
Returns the RLP-encoding of this transaction for inclusion in a block.
RLPLayoutable - Interface in com.norswap.nanoeth.rlp
Implemented by object that have an RLP layout, i.e.
RLPParsing - Class in com.norswap.nanoeth.rlp
Utilities to help parse protocol objects from a RLP layout.
RLPParsingException - Exception in com.norswap.nanoeth.rlp
Signals a problem while parsing some data from an RLP layout.
RLPParsingException(String) - Constructor for exception com.norswap.nanoeth.rlp.RLPParsingException
 
RLPParsingException(String, Throwable) - Constructor for exception com.norswap.nanoeth.rlp.RLPParsingException
 
root - Variable in class com.norswap.nanoeth.trees.patricia.PatriciaTree
The root of the tree.

S

s - Variable in class com.norswap.nanoeth.signature.Signature
 
same(long) - Method in class com.norswap.nanoeth.data.Natural
 
SECURE - Static variable in class com.norswap.nanoeth.utils.Randomness
Cached SecureRandom instance, as building those is expensive.
sequence(RLP...) - Static method in class com.norswap.nanoeth.rlp.RLP
Creates a new RLP object representing a sequence of the given sub-items.
sequence(Object...) - Static method in class com.norswap.nanoeth.rlp.RLP
Creates a sequence from the given items, automatically translating them according to their types.
setRangeAt(byte[], int, byte[]) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Sets dst[index, index + src.length] to src.
sharedPrefix - Variable in class com.norswap.nanoeth.trees.patricia.BranchStep
 
sharedPrefix(Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
Return the amount of nibbles that this object and o share as prefix.
sign(byte[]) - Method in class com.norswap.nanoeth.signature.EthKeyPair
Sign the Keccak hash of the given message (an arbitrary byte sequence) with ECDSA using the private key.
sign(EthKeyPair) - Method in class com.norswap.nanoeth.transactions.UnsignedTransaction
Signs the transaction using the given private key, returning the signed transaction.
signature - Variable in class com.norswap.nanoeth.transactions.Transaction
Signature of the transaction by the sender.
Signature - Class in com.norswap.nanoeth.signature
An ECDSA signature using the SECP-256k1 curve.
Signature(int, Natural, Natural) - Constructor for class com.norswap.nanoeth.signature.Signature
Creates a new signature with the given yParity, r and s values.
SignatureUtils - Class in com.norswap.nanoeth.signature
Signature-related utilities that don't obviously belong in other classes.
signingRLP() - Method in class com.norswap.nanoeth.transactions.UnsignedTransaction
The RLP sequence to sign when signing the transaction.
signWithoutHashing(byte[]) - Method in class com.norswap.nanoeth.signature.EthKeyPair
In Ethereum, the message will always be a hash.
snd - Variable in class com.norswap.nanoeth.utils.Pair
 
SPURIOUS_DRAGON - com.norswap.nanoeth.versions.EthereumVersion
 
SPURIOUS_DRAGON_START - Static variable in class com.norswap.nanoeth.Config
 
startBlock - Variable in enum com.norswap.nanoeth.versions.EthereumVersion
Block height where the fork took effect.
startsBefore(int) - Method in enum com.norswap.nanoeth.versions.EthereumVersion
Returns true iff the start block of this version is before the given block height.
startsBefore(Natural) - Method in enum com.norswap.nanoeth.versions.EthereumVersion
Returns true iff the start block of this version is before the given block height.
stateRoot - Variable in class com.norswap.nanoeth.blocks.BlockHeader
The Merkle root of the state tree.
status - Variable in class com.norswap.nanoeth.blocks.BlockValidity
 
step(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
 
step(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaExtensionNode
 
step(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
step(NodeStore, Nibbles) - Method in class com.norswap.nanoeth.trees.patricia.PatriciaNode
Returns a qudruplet of: this node.
StorageKey - Class in com.norswap.nanoeth.data
Represents a 256-bit (32 bytes) Ethereum storage key within an account's storage tree.
StorageKey(byte[]) - Constructor for class com.norswap.nanoeth.data.StorageKey
 
StorageKey(String) - Constructor for class com.norswap.nanoeth.data.StorageKey
Creates a hash from a hex string (e.g.
store - Variable in class com.norswap.nanoeth.trees.patricia.PatriciaTree
The store associated to this tree).
StorePatriciaBranchNode - Class in com.norswap.nanoeth.trees.patricia.store
A branch node usable for store-backed implementation, or for nodes in abridged form.
StorePatriciaBranchNode(byte[], byte[][]) - Constructor for class com.norswap.nanoeth.trees.patricia.store.StorePatriciaBranchNode
 
StorePatriciaExtensionNode - Class in com.norswap.nanoeth.trees.patricia.store
An extension node usable for store-backed implementation, or for nodes in abridged form.
StorePatriciaExtensionNode(Nibbles, byte[]) - Constructor for class com.norswap.nanoeth.trees.patricia.store.StorePatriciaExtensionNode
 
stream() - Method in class com.norswap.nanoeth.rlp.RLP
Returns a stream over the sequence of sub-items.
subtract(long) - Method in class com.norswap.nanoeth.data.Natural
 
suffix(int) - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
Return a suffix of this nibble sequence, keeping the last n nibbles.

T

TANGERINE_WHISTLE - com.norswap.nanoeth.versions.EthereumVersion
 
TANGERINE_WHISTLE_START - Static variable in class com.norswap.nanoeth.Config
 
that(boolean, String, Object...) - Static method in class com.norswap.nanoeth.utils.Assert
 
timestamp - Variable in class com.norswap.nanoeth.blocks.BlockHeader
A value equal to the reasonable output of Unix’s time() at this block’s inception.
to - Variable in class com.norswap.nanoeth.transactions.UnsignedTransaction
The address of the recipient of the transaction, or, for contract creation transaction, the empty address.
toCompressedHexString(byte[]) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Converts a byte array into a hex string (e.g.
toFullHexString() - Method in class com.norswap.nanoeth.data.Hash
The hex-string representation of this hash, including leading 0 if any, as per ByteUtils.toFullHexString(byte[]).
toFullHexString() - Method in class com.norswap.nanoeth.receipts.LogTopic
The hex-string representation of this hash, including leading 0 if any, as per ByteUtils.toFullHexString(byte[]).
toFullHexString(byte[]) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Converts a byte array into a hex string (e.g.
toHexString() - Method in class com.norswap.nanoeth.data.Natural
 
toHexString() - Method in class com.norswap.nanoeth.receipts.BloomFilter
The hex-string representation of this hash, including leading 0 if any, as per ByteUtils.toFullHexString(byte[]).
toHexString() - Method in class com.norswap.nanoeth.rlp.RLP
The hex-string representation of the binary encoding of this RLP item, including leading 0 if any, as per ByteUtils.toFullHexString(byte[]).
toHexString() - Method in class com.norswap.nanoeth.transactions.Transaction
Returns an hex string (e.g.
toInt(byte...) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Returns the integer encoded by the big-endian bytes array, whose size should be in [0,4].
toLong(byte...) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Returns the integer encoded by the big-endian bytes array, whose size should be in [0,8].
toMap() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaTree
Collects all (key, value) entries in the tree in a map, and returns it.
topics - Variable in class com.norswap.nanoeth.receipts.LogEntry
Topics for this entry.
toString() - Method in class com.norswap.nanoeth.blocks.Block
 
toString() - Method in class com.norswap.nanoeth.blocks.BlockHeader
 
toString() - Method in class com.norswap.nanoeth.blocks.BlockValidity
 
toString() - Method in class com.norswap.nanoeth.data.Address
 
toString() - Method in class com.norswap.nanoeth.data.Hash
 
toString() - Method in class com.norswap.nanoeth.data.StorageKey
 
toString() - Method in class com.norswap.nanoeth.receipts.BloomFilter
 
toString() - Method in class com.norswap.nanoeth.receipts.LogTopic
 
toString() - Method in class com.norswap.nanoeth.rlp.RLP
 
toString() - Method in class com.norswap.nanoeth.signature.Signature
 
toString() - Method in class com.norswap.nanoeth.transactions.AccessList
 
toString() - Method in class com.norswap.nanoeth.transactions.Transaction
 
toString() - Method in class com.norswap.nanoeth.transactions.UnsignedTransaction
 
toString() - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaBranchNode
 
toString() - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaExtensionNode
 
toString() - Method in class com.norswap.nanoeth.trees.patricia.Nibbles
Returns a string representation of this nibble sequence, as an hex string (e.g.
toString() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
toString() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaTree
 
toString() - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaBranchNode
 
toString() - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaExtensionNode
 
toString() - Method in class com.norswap.nanoeth.utils.Pair
 
trace - Variable in exception com.norswap.nanoeth.rlp.RLPParsingException
 
trace() - Method in exception com.norswap.nanoeth.rlp.RLPParsingException
Returns a string containing the initial message, then all the messages in RLPParsingException.trace, in insertion order, separated by newlines.
Transaction - Class in com.norswap.nanoeth.transactions
A "normalized transaction", as defined in EIP-1559 (part of the London hard fork).
Transaction(TransactionFormat, Natural, Natural, Natural, Natural, Natural, Address, Natural, byte[], AccessList, Signature) - Constructor for class com.norswap.nanoeth.transactions.Transaction
 
TransactionEnvelopeType - Class in com.norswap.nanoeth.transactions
Holds constants corresponding to the identifier for the various EIP-2718 envelope types (EIP-2718 only introduces the envelope types mechanisms, the envelope types themselves are introduced in other EIPs).
TransactionFormat - Enum in com.norswap.nanoeth.transactions
List the different possible kind of transaction that can be sent.
transactions - Variable in class com.norswap.nanoeth.blocks.Block
 
transactionsRoot - Variable in class com.norswap.nanoeth.blocks.BlockHeader
The Merkle root of the transactions list of the block.
TreeNodeStore - Class in com.norswap.nanoeth.trees.patricia.memory
Node store implementation for the in-memory tree.
TreeNodeStore() - Constructor for class com.norswap.nanoeth.trees.patricia.memory.TreeNodeStore
 
TX_EIP_155 - com.norswap.nanoeth.transactions.TransactionFormat
Includes chain ID (EIP-155).
TX_EIP_1559 - com.norswap.nanoeth.transactions.TransactionFormat
Includes chain ID (EIP-155), access list (EIP-2930).
TX_EIP_2930 - com.norswap.nanoeth.transactions.TransactionFormat
Includes chain ID (EIP-155), access list (EIP-2930).
TX_LEGACY - com.norswap.nanoeth.transactions.TransactionFormat
Original version.
type - Variable in enum com.norswap.nanoeth.transactions.TransactionFormat
A number representing the envelope type of the transaction, or 0 if the transaction format precedes the introduction of envelop types by EIP-2718.

U

uadd(int, int) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Samed as ByteUtils.addMod(int, int) but indicates that the numbers are intepreted as unsigned bytes, and that the addition should not overflow under that interpretation.
uint(byte) - Static method in class com.norswap.nanoeth.utils.ByteUtils
Converts the byte to an int by reinterpreting its bit pattern as that of an unsigned number.
uncle - Variable in class com.norswap.nanoeth.blocks.BlockValidity
The offending uncle, if the block is invalid because of a particular uncle.
uncleHash - Variable in class com.norswap.nanoeth.blocks.BlockHeader
Hash of the the uncles (aka "ommers") list of the block.
uncles - Variable in class com.norswap.nanoeth.blocks.Block
Uncle (aka ommer) blocks are children of ancestors of this block that are not themselves ancestor of these block, and have not been included as uncles in ancestors.
UnsignedTransaction - Class in com.norswap.nanoeth.transactions
A "normalized transaction", as defined in EIP-1559 (part of the London hard fork), which does not include a signature.
UnsignedTransaction(TransactionFormat, Natural, Natural, Natural, Natural, Natural, Address, Natural, byte[], AccessList) - Constructor for class com.norswap.nanoeth.transactions.UnsignedTransaction
 
unwrap(byte[]) - Static method in class com.norswap.nanoeth.rlp.RLP
If the given encoding encodes a byte array, returns that byte array, otherwise return the encoding.
Utils - Class in com.norswap.nanoeth.utils
Misc general-purpose utilities that do not have a place in other utility classes.
Utils.ThrowingFunction<T,​R> - Interface in com.norswap.nanoeth.utils
Similar to Function, but allowed to throw exceptions.

V

VAL_BAD_DIFFICULTY - com.norswap.nanoeth.blocks.BlockValidityStatus
The difficulty does not match the canonical difficulty calculation.
VAL_BAD_NUMBER - com.norswap.nanoeth.blocks.BlockValidityStatus
The number is not the parent number + 1.
VAL_BAD_TX_ROOT - com.norswap.nanoeth.blocks.BlockValidityStatus
The Merkle root for transactions does not match the transactions included in the block.
VAL_BAD_UNCLE - com.norswap.nanoeth.blocks.BlockValidityStatus
One of the uncle header is invalid.
VAL_BAD_UNCLE_HASH - com.norswap.nanoeth.blocks.BlockValidityStatus
The uncle hash does not match the uncle headers.
VAL_DUPLICATE_UNCLE - com.norswap.nanoeth.blocks.BlockValidityStatus
One or multiple uncles appear multiple time in the block.
VAL_EXTRA_DATA_TOO_LONG - com.norswap.nanoeth.blocks.BlockValidityStatus
The extra data section is longer than 32 bytes.
VAL_FUTURE_UNCLE - com.norswap.nanoeth.blocks.BlockValidityStatus
The uncle's number is the same or greater than the block's number.
VAL_GAS_LIMIT_TOO_HIGH - com.norswap.nanoeth.blocks.BlockValidityStatus
The gas limit is too high compared to the parent.
VAL_GAS_LIMIT_TOO_LOW - com.norswap.nanoeth.blocks.BlockValidityStatus
The gas limit is too low compared to the parent, or under the minimum.
VAL_GAS_USED_TOO_HIGH - com.norswap.nanoeth.blocks.BlockValidityStatus
The gas usage is higher than the gas limit.
VAL_INVALID_POW - com.norswap.nanoeth.blocks.BlockValidityStatus
The nonce and the mix hash are not consistent with regard to the proof of work calculation.
VAL_NONCE_TOO_HIGH - com.norswap.nanoeth.blocks.BlockValidityStatus
The nonce does not match the difficulty.
VAL_OUTDATED_TIMESTAMP - com.norswap.nanoeth.blocks.BlockValidityStatus
The timestamp is older than the parent's timestamp.
VAL_TOO_MANY_UNCLES - com.norswap.nanoeth.blocks.BlockValidityStatus
Too many uncles were included.
VAL_UNCLE_ALREADY_INCLUDED - com.norswap.nanoeth.blocks.BlockValidityStatus
An uncle has already appeared in an ancestor.
VAL_UNCLE_IS_ANCESTOR - com.norswap.nanoeth.blocks.BlockValidityStatus
An uncle has already appeared *as* an ancestor.
VAL_UNCLE_TOO_OLD - com.norswap.nanoeth.blocks.BlockValidityStatus
One of the uncle headers' number is too old (> 6 back).
VAL_UNKNOWN_PARENT - com.norswap.nanoeth.blocks.BlockValidityStatus
We don't know of a block with the given parent hash.
VAL_UNRELATED_UNCLE - com.norswap.nanoeth.blocks.BlockValidityStatus
An included uncle isn't really an uncle (the sibling of an ancestor of degree <= 6.
VAL_VALID - com.norswap.nanoeth.blocks.BlockValidityStatus
The block is valid.
valid() - Method in class com.norswap.nanoeth.blocks.BlockValidity
 
valid() - Method in enum com.norswap.nanoeth.blocks.BlockValidityStatus
 
validate() - Method in class com.norswap.nanoeth.blocks.Block
Validates the block, returning a BlockValidity object to indicate if the block valid or invalid (and why).
validate() - Method in class com.norswap.nanoeth.blocks.BlockHeader
Validates the block header against its parent (automatically retrieved from Blocks.DB).
validate(BlockHeader) - Method in class com.norswap.nanoeth.blocks.BlockHeader
Validates the block header against its parent.
VALIDATE_POW - Static variable in class com.norswap.nanoeth.Config
 
value - Variable in class com.norswap.nanoeth.transactions.UnsignedTransaction
The value in Wei to be transferred to the transaction's recipient, or as an endowment for the newly created contract in the case of contract creation.
value - Variable in class com.norswap.nanoeth.trees.patricia.MerkleProof
Value whose association with the key is being proven, null if proving absence of value.
value - Variable in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
value - Variable in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaBranchNode
The value associated with this node (or null).
value() - Method in class com.norswap.nanoeth.trees.patricia.memory.MemPatriciaBranchNode
 
value() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaBranchNode
Returns the value associated with this leaf node, or null if no value is associated.
value() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaExtensionNode
 
value() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaLeafNode
 
value() - Method in class com.norswap.nanoeth.trees.patricia.PatriciaNode
Returns the value associated with the node, or null if no value is associated.
value() - Method in class com.norswap.nanoeth.trees.patricia.store.StorePatriciaBranchNode
 
valueOf(String) - Static method in enum com.norswap.nanoeth.blocks.BlockValidityStatus
Returns the enum constant of this type with the specified name.
valueOf(String) - Static method in enum com.norswap.nanoeth.transactions.TransactionFormat
Returns the enum constant of this type with the specified name.
valueOf(String) - Static method in enum com.norswap.nanoeth.versions.EthereumVersion
Returns the enum constant of this type with the specified name.
values() - Static method in enum com.norswap.nanoeth.blocks.BlockValidityStatus
Returns an array containing the constants of this enum type, in the order they are declared.
values() - Static method in enum com.norswap.nanoeth.transactions.TransactionFormat
Returns an array containing the constants of this enum type, in the order they are declared.
values() - Static method in enum com.norswap.nanoeth.versions.EthereumVersion
Returns an array containing the constants of this enum type, in the order they are declared.
verify(byte[]) - Method in class com.norswap.nanoeth.signature.Signature
Returns true only if this is a valid signature for Keccak hash of the given message.
verify(MerkleRoot) - Method in class com.norswap.nanoeth.trees.patricia.MerkleProof
 
verify(ECPoint, byte[]) - Method in class com.norswap.nanoeth.signature.Signature
Returns true only if this is a valid signature for Keccak hash of the given message.
verifyPoW(BlockHeader) - Static method in class com.norswap.nanoeth.blocks.ProofOfWork
Verifies the proof of work computation for the given header, i.e.
verifySignature() - Method in class com.norswap.nanoeth.transactions.Transaction
Returns true if the transaction's signature is valid.
verifySignature(byte[]) - Method in class com.norswap.nanoeth.transactions.Transaction
Returns true if the transaction's includes a valid signature of encodedUnsignedTransaction which should be the RLP encoding of the unsigned version of this transaction.
verifyWithoutHashing(ECPoint, byte[]) - Method in class com.norswap.nanoeth.signature.Signature
Returns true only if this is a valid signature for the given message.

W

withChild(PatriciaBranchNode, int, PatriciaNode) - Method in class com.norswap.nanoeth.trees.patricia.memory.TreeNodeStore
 
withChild(PatriciaBranchNode, int, PatriciaNode) - Method in interface com.norswap.nanoeth.trees.patricia.NodeStore
Returns a copy of branch with its child for the given nibble set to child.
withChild(PatriciaBranchNode, int, PatriciaNode) - Method in class com.norswap.nanoeth.trees.patricia.store.MapNodeStore
 
withValue(PatriciaBranchNode, byte[]) - Method in class com.norswap.nanoeth.trees.patricia.memory.TreeNodeStore
 
withValue(PatriciaBranchNode, byte[]) - Method in interface com.norswap.nanoeth.trees.patricia.NodeStore
Returns a copy of branch with its value set to value (possibly null).
withValue(PatriciaBranchNode, byte[]) - Method in class com.norswap.nanoeth.trees.patricia.store.MapNodeStore
 
Wrapper - Annotation Type in com.norswap.nanoeth.annotations
Indicate that the class is a wrapper over a single data field, whose sole purpose is to establish that the value of the field satisfies some properties.

Y

yParity - Variable in class com.norswap.nanoeth.signature.Signature
The y Parity that specifies which key generated this signature (as there are two possible keys).

Z

ZERO - Static variable in class com.norswap.nanoeth.data.Address
An address composed of 20 zero bytes.
ZERO - Static variable in class com.norswap.nanoeth.data.Hash
A hash composed of only zero bytes.
ZERO - Static variable in class com.norswap.nanoeth.data.MerkleRoot
A merkle root composed of only zero bytes, which happens to be the merkle root of empty trees.
ZERO - Static variable in class com.norswap.nanoeth.data.Natural
Zero, as a natural, to avoid holding duplicated copies.
A B C D E F G H I K L M N O P R S T U V W Y Z 
All Classes|All Packages