Skip to main content

use_oci/
lib.rs

1#![forbid(unsafe_code)]
2#![doc = include_str!("../README.md")]
3
4//! Thin facade for primitive OCI vocabulary crates.
5
6#[cfg(feature = "image")]
7pub use use_oci_image as image;
8
9#[cfg(feature = "manifest")]
10pub use use_oci_manifest as manifest;
11
12#[cfg(feature = "index")]
13pub use use_oci_index as index;
14
15#[cfg(feature = "descriptor")]
16pub use use_oci_descriptor as descriptor;
17
18#[cfg(feature = "layer")]
19pub use use_oci_layer as layer;
20
21#[cfg(feature = "config")]
22pub use use_oci_config as config;
23
24#[cfg(feature = "layout")]
25pub use use_oci_layout as layout;
26
27#[cfg(feature = "annotation")]
28pub use use_oci_annotation as annotation;
29
30#[cfg(feature = "media-type")]
31pub use use_oci_media_type as media_type;
32
33#[cfg(feature = "platform")]
34pub use use_oci_platform as platform;
35
36#[cfg(feature = "digest")]
37pub use use_oci_digest as digest;
38
39#[cfg(feature = "distribution")]
40pub use use_oci_distribution as distribution;
41
42#[cfg(feature = "reference")]
43pub use use_oci_reference as reference;
44
45#[cfg(feature = "runtime")]
46pub use use_oci_runtime as runtime;
47
48#[cfg(feature = "hook")]
49pub use use_oci_hook as hook;
50
51#[cfg(feature = "namespace")]
52pub use use_oci_namespace as namespace;
53
54#[cfg(feature = "tag")]
55pub use use_oci_tag as tag;
56
57/// Common OCI primitive re-exports.
58pub mod prelude {
59    #[cfg(feature = "annotation")]
60    pub use use_oci_annotation::{Annotation, AnnotationKey, AnnotationValue};
61    #[cfg(feature = "descriptor")]
62    pub use use_oci_descriptor::{DescriptorSize, DescriptorUrl, OciDescriptor};
63    #[cfg(feature = "digest")]
64    pub use use_oci_digest::{DigestAlgorithm, DigestValue, OciDigest};
65    #[cfg(feature = "distribution")]
66    pub use use_oci_distribution::{
67        DistributionRoute, ManifestReference, RegistryHost, RepositoryName,
68    };
69    #[cfg(feature = "image")]
70    pub use use_oci_image::{ImageId, ImageKind, ImageMetadata, ImageName};
71    #[cfg(feature = "index")]
72    pub use use_oci_index::{IndexManifest, OciIndex};
73    #[cfg(feature = "layer")]
74    pub use use_oci_layer::{LayerMediaType, LayerSize, OciLayer};
75    #[cfg(feature = "layout")]
76    pub use use_oci_layout::{LayoutVersion, OciLayoutPaths};
77    #[cfg(feature = "manifest")]
78    pub use use_oci_manifest::{OciManifest, SchemaVersion};
79    #[cfg(feature = "media-type")]
80    pub use use_oci_media_type::{KnownMediaType, OciMediaType};
81    #[cfg(feature = "namespace")]
82    pub use use_oci_namespace::{Namespace, NamespaceKind};
83    #[cfg(feature = "platform")]
84    pub use use_oci_platform::{OciArchitecture, OciOs, OciPlatform};
85    #[cfg(feature = "reference")]
86    pub use use_oci_reference::{
87        CanonicalReference, DigestedReference, ImageReference, TaggedReference,
88    };
89    #[cfg(feature = "runtime")]
90    pub use use_oci_runtime::{Mount, MountKind, RootFilesystem, RuntimeSpec};
91    #[cfg(feature = "tag")]
92    pub use use_oci_tag::{ArchitectureTag, OciTag, VersionTag};
93}