2020-07-06 04:22:23 -07:00
|
|
|
#![cfg_attr(RUSTC_WITH_SPECIALIZATION, feature(specialization))]
|
2018-06-06 08:49:22 -07:00
|
|
|
//! The `solana` library implements the Solana high-performance blockchain architecture.
|
2018-06-07 13:51:29 -07:00
|
|
|
//! It includes a full Rust implementation of the architecture (see
|
2019-05-23 22:05:16 -07:00
|
|
|
//! [Validator](server/struct.Validator.html)) as well as hooks to GPU implementations of its most
|
2018-06-07 13:51:29 -07:00
|
|
|
//! paralellizable components (i.e. [SigVerify](sigverify/index.html)). It also includes
|
2019-10-11 12:30:52 -07:00
|
|
|
//! command-line tools to spin up validators and a Rust library
|
2018-06-06 08:49:22 -07:00
|
|
|
//!
|
|
|
|
|
2020-09-24 12:23:09 -07:00
|
|
|
#[macro_use]
|
|
|
|
extern crate solana_bpf_loader_program;
|
|
|
|
|
2020-03-16 08:37:31 -07:00
|
|
|
pub mod accounts_hash_verifier;
|
2018-05-14 16:31:13 -07:00
|
|
|
pub mod banking_stage;
|
2020-09-03 19:39:05 -07:00
|
|
|
pub mod bigtable_upload_service;
|
2019-03-01 19:43:30 -08:00
|
|
|
pub mod broadcast_stage;
|
2020-09-24 12:23:09 -07:00
|
|
|
mod builtins;
|
2020-09-09 08:33:14 -07:00
|
|
|
pub mod cache_block_time_service;
|
2019-01-31 15:51:29 -08:00
|
|
|
pub mod cluster_info_vote_listener;
|
2020-06-12 17:16:10 -07:00
|
|
|
pub mod commitment_service;
|
2020-09-01 22:06:06 -07:00
|
|
|
pub mod completed_data_sets_service;
|
2020-03-11 21:31:50 -07:00
|
|
|
mod deprecated;
|
2020-09-22 12:26:32 -07:00
|
|
|
pub mod sample_performance_service;
|
2019-10-07 11:08:01 -07:00
|
|
|
pub mod shred_fetch_stage;
|
2019-03-08 19:28:19 -08:00
|
|
|
#[macro_use]
|
|
|
|
pub mod contact_info;
|
2020-06-11 12:16:04 -07:00
|
|
|
pub mod bank_weight_fork_choice;
|
2018-11-15 13:23:26 -08:00
|
|
|
pub mod cluster_info;
|
2020-03-11 21:31:50 -07:00
|
|
|
pub mod cluster_slots;
|
2020-08-11 12:48:13 -07:00
|
|
|
pub mod cluster_slots_service;
|
2019-06-24 13:41:23 -07:00
|
|
|
pub mod consensus;
|
2019-10-09 16:07:18 -07:00
|
|
|
pub mod crds;
|
|
|
|
pub mod crds_gossip;
|
|
|
|
pub mod crds_gossip_error;
|
|
|
|
pub mod crds_gossip_pull;
|
|
|
|
pub mod crds_gossip_push;
|
2020-09-17 07:05:16 -07:00
|
|
|
pub mod crds_shards;
|
2019-10-09 16:07:18 -07:00
|
|
|
pub mod crds_value;
|
2020-03-11 21:31:50 -07:00
|
|
|
pub mod epoch_slots;
|
2018-05-29 10:18:12 -07:00
|
|
|
pub mod fetch_stage;
|
2020-06-11 12:16:04 -07:00
|
|
|
pub mod fork_choice;
|
2019-01-25 21:58:35 -08:00
|
|
|
pub mod gen_keys;
|
2018-12-06 12:52:47 -08:00
|
|
|
pub mod gossip_service;
|
2020-06-11 12:16:04 -07:00
|
|
|
pub mod heaviest_subtree_fork_choice;
|
2019-07-20 13:13:55 -07:00
|
|
|
pub mod ledger_cleanup_service;
|
2019-01-10 09:21:38 -08:00
|
|
|
pub mod local_vote_signer_service;
|
2020-05-09 11:05:29 -07:00
|
|
|
pub mod non_circulating_supply;
|
2020-07-28 02:33:27 -07:00
|
|
|
pub mod optimistic_confirmation_verifier;
|
2020-09-28 19:43:05 -07:00
|
|
|
pub mod optimistically_confirmed_bank_tracker;
|
2018-09-26 05:52:13 -07:00
|
|
|
pub mod poh_recorder;
|
2018-10-25 14:56:21 -07:00
|
|
|
pub mod poh_service;
|
2020-03-26 19:57:27 -07:00
|
|
|
pub mod progress_map;
|
2020-05-11 22:20:11 -07:00
|
|
|
pub mod pubkey_references;
|
2020-05-19 12:38:18 -07:00
|
|
|
pub mod repair_response;
|
2019-02-07 15:10:54 -08:00
|
|
|
pub mod repair_service;
|
2020-07-06 22:49:40 -07:00
|
|
|
pub mod repair_weight;
|
2020-07-02 14:33:04 -07:00
|
|
|
pub mod repair_weighted_traversal;
|
2018-12-07 14:09:29 -08:00
|
|
|
pub mod replay_stage;
|
2020-01-02 19:50:43 -08:00
|
|
|
mod result;
|
2018-08-09 12:03:34 -07:00
|
|
|
pub mod retransmit_stage;
|
2020-02-04 18:50:24 -08:00
|
|
|
pub mod rewards_recorder_service;
|
2018-08-10 16:05:23 -07:00
|
|
|
pub mod rpc;
|
2020-05-11 14:47:40 -07:00
|
|
|
pub mod rpc_error;
|
2020-05-30 00:33:59 -07:00
|
|
|
pub mod rpc_health;
|
2018-10-12 08:17:28 -07:00
|
|
|
pub mod rpc_pubsub;
|
2019-02-17 09:09:46 -08:00
|
|
|
pub mod rpc_pubsub_service;
|
2019-02-17 09:29:08 -08:00
|
|
|
pub mod rpc_service;
|
2019-02-17 08:38:36 -08:00
|
|
|
pub mod rpc_subscriptions;
|
2020-09-08 02:00:49 -07:00
|
|
|
pub mod send_transaction_service;
|
2020-01-31 14:23:51 -08:00
|
|
|
pub mod serve_repair;
|
|
|
|
pub mod serve_repair_service;
|
2018-05-25 15:52:17 -07:00
|
|
|
pub mod sigverify;
|
2019-10-28 10:29:38 -07:00
|
|
|
pub mod sigverify_shreds;
|
2018-05-25 15:52:17 -07:00
|
|
|
pub mod sigverify_stage;
|
2019-10-18 14:58:16 -07:00
|
|
|
pub mod snapshot_packager_service;
|
2020-09-18 22:21:44 -07:00
|
|
|
pub mod test_validator;
|
2018-05-14 16:36:19 -07:00
|
|
|
pub mod tpu;
|
2019-11-20 15:43:10 -08:00
|
|
|
pub mod transaction_status_service;
|
2020-07-14 00:38:48 -07:00
|
|
|
pub mod tree_diff;
|
2018-05-11 23:31:32 -07:00
|
|
|
pub mod tvu;
|
2019-05-23 22:05:16 -07:00
|
|
|
pub mod validator;
|
2020-03-15 20:31:05 -07:00
|
|
|
pub mod verified_vote_packets;
|
2020-07-28 02:33:27 -07:00
|
|
|
pub mod vote_stake_tracker;
|
2019-06-01 07:55:43 -07:00
|
|
|
pub mod weighted_shuffle;
|
2018-09-07 15:00:26 -07:00
|
|
|
pub mod window_service;
|
2018-12-08 21:44:20 -08:00
|
|
|
|
2018-03-07 13:47:13 -08:00
|
|
|
#[macro_use]
|
2018-03-19 09:18:48 -07:00
|
|
|
extern crate log;
|
2018-12-08 21:44:20 -08:00
|
|
|
|
2018-02-20 15:26:11 -08:00
|
|
|
#[macro_use]
|
|
|
|
extern crate serde_derive;
|
2019-05-16 08:23:31 -07:00
|
|
|
|
|
|
|
#[cfg(test)]
|
2018-09-21 14:27:03 -07:00
|
|
|
#[macro_use]
|
2018-03-05 14:34:15 -08:00
|
|
|
extern crate serde_json;
|
2018-12-08 21:44:20 -08:00
|
|
|
|
2019-02-18 22:26:22 -08:00
|
|
|
#[macro_use]
|
|
|
|
extern crate solana_metrics;
|
|
|
|
|
2020-07-06 04:22:23 -07:00
|
|
|
#[macro_use]
|
|
|
|
extern crate solana_sdk_macro_frozen_abi;
|
|
|
|
|
2018-03-07 13:47:13 -08:00
|
|
|
#[cfg(test)]
|
|
|
|
#[macro_use]
|
|
|
|
extern crate matches;
|