Skip to main content

smiles_rs/
lib.rs

1#![no_std]
2#![doc = include_str!("../README.md")]
3
4#[allow(unused_imports)]
5#[macro_use]
6extern crate alloc;
7#[cfg(test)]
8#[macro_use]
9extern crate std;
10#[cfg(all(feature = "datasets", not(test)))]
11extern crate std;
12
13pub mod atom;
14pub mod bond;
15#[cfg(feature = "datasets")]
16pub mod datasets;
17pub mod errors;
18pub(crate) mod parser;
19pub mod smiles;
20pub mod token;
21
22#[cfg(feature = "datasets")]
23pub use crate::datasets::{
24    ArchiveMode, CacheMode, DatasetArtifact, DatasetCollectionArtifact, DatasetCollectionSource,
25    DatasetCompression, DatasetError, DatasetFetchOptions, DatasetFile, DatasetSmilesIter,
26    DatasetSmilesRecord, DatasetSmilesRecordIter, DatasetSource, LOTUS_SMILES, LotusSmiles,
27    MASS_SPEC_GYM_SMILES, MassSpecGymSmiles, PUBCHEM_SMILES, PubChemSmiles,
28    SmilesDatasetRecordSource, SmilesDatasetSource, ZINC20_EXPECTED_RECORD_COUNT, ZINC20_SMILES,
29    Zinc20Smiles, default_dataset_cache_dir,
30};
31pub use crate::{
32    errors::{RootError, SmilesError, SmilesErrorWithSpan, SubgraphError},
33    smiles::{
34        AromaticityAssignment, AromaticityAssignmentApplicationError, AromaticityDiagnostic,
35        AromaticityModel, AromaticityPerception, AromaticityPolicy, AromaticityRingFamilyKind,
36        AromaticityStatus, AtomEnvironment, DoubleBondStereoConfig, Fragment, GraphSimilarities,
37        InitialProductVertexOrdering, KekulizationError, KekulizationMode, LargestFragmentMetric,
38        McesBuilder, McesResult, McesSearchMode, RdkitDefaultAromaticity, RdkitMdlAromaticity,
39        RdkitSimpleAromaticity, RingAtomMembership, RingAtomMembershipScratch, RingMembership,
40        Smiles, SmilesComponents, SmilesMces, SymmSssrResult, SymmSssrStatus,
41        WildcardAromaticityPerception, WildcardMolecularFormulaConversionError, WildcardSmiles,
42        WildcardSmilesComponents,
43    },
44};
45
46/// Common imports for working with this crate.
47pub mod prelude {
48    #[cfg(feature = "datasets")]
49    pub use crate::{
50        ArchiveMode, CacheMode, DatasetArtifact, DatasetCollectionArtifact,
51        DatasetCollectionSource, DatasetCompression, DatasetError, DatasetFetchOptions,
52        DatasetFile, DatasetSmilesIter, DatasetSmilesRecord, DatasetSmilesRecordIter,
53        DatasetSource, LOTUS_SMILES, LotusSmiles, MASS_SPEC_GYM_SMILES, MassSpecGymSmiles,
54        PUBCHEM_SMILES, PubChemSmiles, SmilesDatasetRecordSource, SmilesDatasetSource,
55        ZINC20_EXPECTED_RECORD_COUNT, ZINC20_SMILES, Zinc20Smiles, default_dataset_cache_dir,
56    };
57    pub use crate::{
58        AromaticityAssignment, AromaticityAssignmentApplicationError, AromaticityDiagnostic,
59        AromaticityModel, AromaticityPerception, AromaticityPolicy, AromaticityRingFamilyKind,
60        AromaticityStatus, AtomEnvironment, DoubleBondStereoConfig, Fragment, GraphSimilarities,
61        InitialProductVertexOrdering, KekulizationError, KekulizationMode, LargestFragmentMetric,
62        McesBuilder, McesResult, McesSearchMode, RdkitDefaultAromaticity, RdkitMdlAromaticity,
63        RdkitSimpleAromaticity, RingAtomMembership, RingAtomMembershipScratch, RingMembership,
64        RootError, Smiles, SmilesComponents, SmilesError, SmilesErrorWithSpan, SmilesMces,
65        SubgraphError, SymmSssrResult, SymmSssrStatus, WildcardAromaticityPerception,
66        WildcardMolecularFormulaConversionError, WildcardSmiles, WildcardSmilesComponents,
67    };
68}