snarkvm_debug/
lib.rs

1// Copyright (C) 2019-2023 Aleo Systems Inc.
2// This file is part of the snarkVM 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// http://www.apache.org/licenses/LICENSE-2.0
8
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15#![forbid(unsafe_code)]
16#![allow(clippy::module_inception)]
17#![cfg_attr(test, allow(clippy::assertions_on_result_states))]
18
19#[cfg(feature = "cli")]
20#[macro_use]
21extern crate thiserror;
22
23#[cfg(feature = "cli")]
24pub mod cli;
25pub mod file;
26pub mod package;
27
28#[cfg(feature = "algorithms")]
29pub use snarkvm_algorithms as algorithms;
30#[cfg(feature = "circuit")]
31pub use snarkvm_circuit as circuit;
32#[cfg(feature = "console")]
33pub use snarkvm_console as console;
34#[cfg(feature = "curves")]
35pub use snarkvm_curves as curves;
36#[cfg(feature = "fields")]
37pub use snarkvm_fields as fields;
38#[cfg(feature = "ledger")]
39pub use snarkvm_ledger_debug as ledger;
40#[cfg(feature = "metrics")]
41pub use snarkvm_metrics as metrics;
42#[cfg(feature = "parameters")]
43pub use snarkvm_parameters as parameters;
44#[cfg(feature = "synthesizer")]
45pub use snarkvm_synthesizer_debug as synthesizer;
46#[cfg(feature = "utilities")]
47pub use snarkvm_utilities as utilities;
48#[cfg(feature = "wasm")]
49pub use snarkvm_wasm as wasm;
50
51pub mod prelude {
52    #[cfg(feature = "console")]
53    pub use crate::console::{account::*, network::*, program::*};
54    #[cfg(feature = "ledger")]
55    pub use crate::ledger::*;
56    #[cfg(feature = "synthesizer")]
57    pub use crate::synthesizer::prelude::*;
58}