pub mod xy;
pub mod xyz;
use std::{
fmt::{Debug, Display},
ops::{Add, AddAssign, Div, Mul, Neg, Sub, SubAssign},
};
pub use xy::XYVec;
pub use xyz::XYZVec;
pub trait CordicPhantomTrait {}
impl<Frac> CordicPhantomTrait for fixed::FixedI8<Frac> {}
impl<Frac> CordicPhantomTrait for fixed::FixedI16<Frac> {}
impl<Frac> CordicPhantomTrait for fixed::FixedI32<Frac> {}
impl<Frac> CordicPhantomTrait for fixed::FixedI64<Frac> {}
pub trait VecInner:
Clone
+ Copy
+ Sized
+ Debug
+ Display
+ Add<Output = Self>
+ AddAssign
+ Sub<Output = Self>
+ SubAssign
+ Mul<Output = Self>
+ Div<Output = Self>
+ Neg<Output = Self>
{
}
impl<
V: Clone
+ Copy
+ Sized
+ Debug
+ Display
+ Add<Output = Self>
+ AddAssign
+ Sub<Output = Self>
+ SubAssign
+ Mul<Output = Self>
+ Div<Output = Self>
+ Neg<Output = Self>,
> VecInner for V
{
}