1
2
3#![warn(
11 rust_2018_idioms,
12 future_incompatible,
13 unused_extern_crates,
14 unused,
15
16 missing_copy_implementations,
17 missing_debug_implementations,
18
19 clippy::all,
20 clippy::restriction,
21 clippy::pedantic,
22 clippy::nursery,
23 clippy::cargo,
24)]
25
26#![deny(
27 unused_variables,
28 unused_assignments,
29 dead_code,
30 unused_must_use,
31 missing_copy_implementations,
32 trivial_numeric_casts,
33 redundant_semicolons
34)]
35
36#![forbid(unsafe_code)]
37#![warn(missing_docs)]
38
39pub mod io; pub mod math;
42pub mod compression;
43pub mod meta;
44pub mod image;
45
46pub mod error;
47pub mod block;
48
49#[macro_use]
50extern crate smallvec;
51
52pub mod prelude {
55
56 pub mod traits {
58 pub use crate::image::write::{WritableImage, channels::GetPixel};
59 pub use crate::image::read::{
60 read, any_channels::ReadSamples, image::ReadLayers,
61 image::ReadImage, layers::ReadChannels,
62 specific_channels::{ReadSpecificChannel}
63 };
64
65 pub use crate::image::crop::{Crop, CropWhere, CropResult, InspectSample, CroppedChannels, ApplyCroppedView};
66 }
67
68 pub use traits::*;
69
70 pub use crate::image::write::{write_rgb_file, write_rgba_file};
71 pub use crate::image::read::{
72 read_first_rgba_layer_from_file,
73 read_all_rgba_layers_from_file,
74 read_all_data_from_file,
75 read_all_flat_layers_from_file,
76 read_first_flat_layer_from_file
77 };
78
79 pub use crate::image::*;
81 pub use crate::meta::{ attribute, MetaData, header::{ LayerAttributes, ImageAttributes } };
82 pub use crate::block::samples::Sample;
83 pub use crate::meta::attribute::{
84 AttributeValue, Compression, Text, IntegerBounds,
85 LineOrder, SampleType, TileDescription, ChannelDescription
86 };
87
88 pub use crate::math::Vec2;
90
91 pub use crate::error::{ Result, Error };
93
94 pub use half::f16;
96 pub use smallvec::SmallVec;
97}
98
99
100