#![warn(unused_crate_dependencies)]
#![warn(clippy::print_stdout, clippy::print_stderr)]
#![cfg_attr(target_pointer_width = "64", warn(clippy::trivially_copy_pass_by_ref))]
#![cfg_attr(docsrs, feature(doc_cfg))]
#![allow(missing_docs, reason = "We have many as-yet undocumented items.")]
#![expect(
missing_debug_implementations,
clippy::cast_possible_truncation,
clippy::missing_assert_message,
reason = "Deferred"
)]
#![allow(
unnameable_types,
reason = "Deferred, only apply in some feature sets so not expect"
)]
mod binning;
mod clip;
mod config;
mod draw;
mod encoding;
#[cfg(feature = "bump_estimate")]
mod estimate;
mod glyph;
mod glyph_cache;
mod image_cache;
mod mask;
pub mod math;
mod monoid;
mod path;
mod ramp_cache;
mod resolve;
pub use binning::BinHeader;
pub use clip::{Clip, ClipBbox, ClipBic, ClipElement};
pub use config::{
BufferSize, BufferSizes, BumpAllocatorMemory, BumpAllocators, ConfigUniform, IndirectCount,
RenderConfig, WorkgroupCounts, WorkgroupSize,
};
pub use draw::{
DRAW_INFO_FLAGS_FILL_RULE_BIT, DrawBbox, DrawBeginClip, DrawBlurRoundedRect, DrawColor,
DrawImage, DrawLinearGradient, DrawMonoid, DrawRadialGradient, DrawSweepGradient, DrawTag,
};
pub use encoding::{Encoding, Resources, StreamOffsets};
pub use glyph::{Glyph, GlyphRun};
pub use mask::{make_mask_lut, make_mask_lut_16};
pub use math::Transform;
pub use monoid::Monoid;
pub use path::{
Cubic, LineSoup, Path, PathBbox, PathEncoder, PathMonoid, PathSegment, PathSegmentType,
PathTag, SegmentCount, Style, Tile,
};
pub use ramp_cache::Ramps;
pub use resolve::{Layout, Patch, Resolver, resolve_solid_paths_only};
#[cfg(feature = "bump_estimate")]
pub use estimate::BumpEstimator;
pub type NormalizedCoord = i16;
#[cfg(test)]
mod tests {
const _NORMALISED_COORD_SIZE_MATCHES: () = assert!(
size_of::<skrifa::prelude::NormalizedCoord>() == size_of::<crate::NormalizedCoord>()
);
}