stratus/eth/primitives/
mod.rs

1mod account;
2mod address;
3mod block;
4mod block_filter;
5mod block_header;
6mod block_number;
7pub mod bytes;
8mod call_input;
9mod chain_id;
10mod difficulty;
11mod ecdsa_rs;
12mod ecdsa_v;
13pub mod execution;
14mod execution_account_changes;
15mod execution_metrics;
16mod execution_result;
17mod external_block;
18mod external_block_with_receipts;
19mod external_receipt;
20mod external_receipts;
21mod external_transaction;
22mod gas;
23mod hash;
24mod index;
25mod log;
26mod log_filter;
27mod log_filter_input;
28mod log_message;
29mod log_topic;
30pub mod logs_bloom;
31mod miner_nonce;
32mod nonce;
33mod pending_block;
34mod pending_block_header;
35mod point_in_time;
36mod signature_component;
37mod size;
38mod slot;
39mod slot_index;
40mod slot_value;
41mod stratus_error;
42mod timestamp_filter;
43pub mod transaction_execution;
44mod transaction_input;
45mod transaction_mined;
46mod transaction_stage;
47mod unix_time;
48mod unix_time_now;
49mod wei;
50pub use account::Account;
51pub use account::test_accounts;
52pub use address::Address;
53pub use block::Block;
54pub use block_filter::BlockFilter;
55pub use block_header::BlockHeader;
56pub use block_number::BlockNumber;
57pub use bytes::Bytes;
58pub use call_input::CallInput;
59pub use chain_id::ChainId;
60pub use difficulty::Difficulty;
61pub use ecdsa_rs::EcdsaRs;
62pub use ecdsa_v::EcdsaV;
63pub use execution::EvmExecution;
64pub use execution::ExecutionChanges;
65pub use execution_account_changes::Change;
66pub use execution_account_changes::ExecutionAccountChanges;
67pub use execution_metrics::EvmExecutionMetrics;
68pub use execution_result::ExecutionResult;
69pub use external_block::ExternalBlock;
70pub use external_block_with_receipts::ExternalBlockWithReceipts;
71pub use external_receipt::ExternalReceipt;
72pub use external_receipts::ExternalReceipts;
73pub use external_transaction::ExternalTransaction;
74pub use gas::Gas;
75pub use hash::Hash;
76pub use index::Index;
77pub use log::Log;
78pub use log_filter::LogFilter;
79pub use log_filter_input::LogFilterInput;
80pub use log_filter_input::LogFilterInputTopic;
81pub use log_message::LogMessage;
82pub use log_topic::LogTopic;
83pub use miner_nonce::MinerNonce;
84pub use nonce::Nonce;
85pub use pending_block::PendingBlock;
86pub use pending_block_header::PendingBlockHeader;
87pub use point_in_time::PointInTime;
88pub use signature_component::SignatureComponent;
89pub use size::Size;
90pub use slot::Slot;
91pub use slot_index::SlotIndex;
92pub use slot_value::SlotValue;
93pub use stratus_error::ConsensusError;
94pub use stratus_error::DecodeInputError;
95pub use stratus_error::ErrorCode;
96pub use stratus_error::ImporterError;
97pub use stratus_error::RpcError;
98pub use stratus_error::StateError;
99pub use stratus_error::StorageError;
100pub use stratus_error::StratusError;
101pub use stratus_error::TransactionError;
102pub use stratus_error::UnexpectedError;
103pub use timestamp_filter::BlockTimestampFilter;
104pub use timestamp_filter::BlockTimestampSeekMode;
105pub use transaction_execution::TransactionExecution;
106pub use transaction_input::ExecutionInfo;
107pub use transaction_input::Signature;
108pub use transaction_input::TransactionInfo;
109pub use transaction_input::TransactionInput;
110pub use transaction_mined::MinedData;
111pub use transaction_mined::TransactionMined;
112pub use transaction_stage::TransactionStage;
113pub use unix_time::UnixTime;
114pub use unix_time_now::UnixTimeNow;
115pub use wei::Wei;
116
117// -----------------------------------------------------------------------------
118// Tests
119// -----------------------------------------------------------------------------
120#[cfg(test)]
121mod tests {
122    use super::*;
123    use crate::gen_test_json;
124    use crate::gen_test_serde;
125
126    // TODO: Test external structs and internal structs that contain external strtucts that do no implement faker::Dummy
127    // gen_test_serde!(ExecutionConflicts);
128    // gen_test_serde!(ExecutionConflictsBuilder);
129    // gen_test_serde!(ExternalBlock);
130    // gen_test_serde!(ExternalReceipt);
131    // gen_test_serde!(ExternalReceipts);
132    // gen_test_serde!(ExternalTransaction);
133    // gen_test_serde!(ExternalTransactionExecution);
134    // gen_test_serde!(PendingBlock);
135    // gen_test_serde!(TransactionExecution);
136    // gen_test_serde!(TransactionStage);
137
138    gen_test_json!(ExternalBlock);
139    gen_test_json!(ExternalBlockWithReceipts);
140    gen_test_json!(ExternalReceipt);
141    gen_test_json!(ExternalReceipts);
142    gen_test_json!(ExternalTransaction);
143
144    gen_test_serde!(Account);
145    gen_test_serde!(Address);
146    gen_test_serde!(BlockFilter);
147    gen_test_serde!(BlockHeader);
148    gen_test_serde!(BlockNumber);
149    gen_test_serde!(Bytes);
150    gen_test_serde!(CallInput);
151    gen_test_serde!(ChainId);
152    gen_test_serde!(Difficulty);
153    gen_test_serde!(EcdsaRs);
154    gen_test_serde!(EcdsaV);
155    gen_test_serde!(EvmExecutionMetrics);
156    gen_test_serde!(ExecutionAccountChanges);
157    gen_test_serde!(ExecutionResult);
158    gen_test_serde!(Gas);
159    gen_test_serde!(Hash);
160    gen_test_serde!(Index);
161    gen_test_serde!(Log);
162    gen_test_serde!(LogFilter);
163    gen_test_serde!(LogFilterInput);
164    gen_test_serde!(LogFilterInputTopic);
165    gen_test_serde!(LogTopic);
166    gen_test_serde!(MinerNonce);
167    gen_test_serde!(Nonce);
168    gen_test_serde!(SignatureComponent);
169    gen_test_serde!(Size);
170    gen_test_serde!(Slot);
171    gen_test_serde!(SlotIndex);
172    gen_test_serde!(SlotValue);
173    gen_test_serde!(TransactionInput);
174    gen_test_serde!(UnixTime);
175    gen_test_serde!(UnixTimeNow);
176    gen_test_serde!(Wei);
177}