/ console / src / lib.rs
lib.rs
 1  // Copyright (c) 2019-2025 Alpha-Delta Network Inc.
 2  // This file is part of the alphavm library.
 3  
 4  // Licensed under the Apache License, Version 2.0 (the "License");
 5  // you may not use this file except in compliance with the License.
 6  // You may obtain a copy of the License at:
 7  
 8  // http://www.apache.org/licenses/LICENSE-2.0
 9  
10  // Unless required by applicable law or agreed to in writing, software
11  // distributed under the License is distributed on an "AS IS" BASIS,
12  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  // See the License for the specific language governing permissions and
14  // limitations under the License.
15  
16  #![forbid(unsafe_code)]
17  #![allow(clippy::too_many_arguments)]
18  #![warn(clippy::cast_possible_truncation)]
19  
20  #[cfg(all(feature = "dev_skip_checks", not(feature = "test_consensus_heights")))]
21  compile_error!("feature \"dev_skip_checks\" requires feature \"test_consensus_heights\".");
22  
23  #[cfg(feature = "account")]
24  pub use alphavm_console_account as account;
25  
26  #[cfg(feature = "algorithms")]
27  pub use alphavm_console_algorithms as algorithms;
28  
29  #[cfg(feature = "collections")]
30  pub use alphavm_console_collections as collections;
31  
32  #[cfg(feature = "network")]
33  pub use alphavm_console_network as network;
34  
35  #[cfg(feature = "program")]
36  pub use alphavm_console_program as program;
37  
38  #[cfg(feature = "types")]
39  pub use alphavm_console_types as types;
40  
41  pub mod prelude {
42      #[cfg(feature = "network")]
43      pub use crate::network::prelude::*;
44  }
45  
46  #[cfg(all(feature = "filesystem", target_arch = "wasm32"))]
47  compile_error!("Filesystem feature is not supported on wasm32");