use sigils::{Constants, Degree, Radian, Trig};



fn main()
{
   let mut val: f64;
   let mut degrees: Degree<f64>;
   let mut radians: Radian<f64>;

   val = Constants::QUARTER_PI;
   val *= 6f64;
   radians = Radian::new(val);
   degrees = Trig::acos(Trig::cos(radians));

   println!("{:?}", radians);
   println!("{:?}", degrees);
   println!("");

   radians = Radian::new(Constants::QUARTER_PI);
   radians = Trig::acos(Trig::cos(radians));
   degrees = Degree::from(radians);

   println!("{:?}", radians);
   println!("{:?}", degrees);
   println!("");

   degrees = Degree::new(270.0f64);
   radians = Trig::acos(Trig::cos(degrees));

   println!("{:?}", degrees);
   println!("{:?}", radians);
   println!("");

   degrees = Degree::new(90.0f64);
   degrees = Trig::acos(Trig::cos(degrees));
   radians = Radian::from(degrees);

   println!("{:?}", degrees);
   println!("{:?}", radians);
   println!("");
}