use super::*;
use qtty_derive::Unit;
#[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Unit)]
#[unit(symbol = "in²", dimension = Area, ratio = 6.4516e-4)]
pub struct SquareInch;
pub type SquareInches = Quantity<SquareInch>;
#[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Unit)]
#[unit(symbol = "ft²", dimension = Area, ratio = 0.09290304)]
pub struct SquareFoot;
pub type SquareFeet = Quantity<SquareFoot>;
#[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Unit)]
#[unit(symbol = "yd²", dimension = Area, ratio = 0.83612736)]
pub struct SquareYard;
pub type SquareYards = Quantity<SquareYard>;
#[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Unit)]
#[unit(symbol = "mi²", dimension = Area, ratio = 2_589_988.110_336)]
pub struct SquareMile;
pub type SquareMiles = Quantity<SquareMile>;
crate::impl_unit_from_conversions_between!(
SquareMeter, SquareKilometer, SquareCentimeter, SquareMillimeter;
SquareInch, SquareFoot, SquareYard, SquareMile
);
#[cfg(feature = "cross-unit-ops")]
crate::impl_unit_cross_unit_ops_between!(
SquareMeter, SquareKilometer, SquareCentimeter, SquareMillimeter;
SquareInch, SquareFoot, SquareYard, SquareMile
);
#[macro_export]
#[doc(hidden)]
macro_rules! area_customary_units {
($cb:path) => {
$cb!(SquareInch, SquareFoot, SquareYard, SquareMile,);
};
}