Browse Source

Extract complex

Łukasz Jan Niemier 9 years ago
parent
commit
ed076070e6
4 changed files with 20 additions and 3 deletions
  1. 4 0
      Cargo.toml
  2. 10 0
      complex/Cargo.toml
  3. 3 2
      complex/src/lib.rs
  4. 3 1
      src/lib.rs

+ 4 - 0
Cargo.toml

@@ -22,6 +22,10 @@ name = "shootout-pidigits"
 optional = true
 path = "bigint"
 
+[dependencies.num-complex]
+optional = false
+path = "complex"
+
 [dependencies.num-integer]
 path = "./integer"
 

+ 10 - 0
complex/Cargo.toml

@@ -0,0 +1,10 @@
+[package]
+authors = ["Łukasz Jan Niemier <[email protected]>"]
+name = "num-complex"
+version = "0.1.0"
+
+[dependencies]
+
+[dependencies.num-traits]
+optional = false
+path = "../traits"

+ 3 - 2
src/complex.rs → complex/src/lib.rs

@@ -8,16 +8,17 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
-
 //! Complex numbers.
 
+extern crate num_traits as traits;
+
 use std::fmt;
 use std::ops::{Add, Div, Mul, Neg, Sub};
 
 #[cfg(feature = "serde")]
 use serde;
 
-use {Zero, One, Num, Float};
+use traits::{Zero, One, Num, Float};
 
 // FIXME #1284: handle complex NaN & infinity etc. This
 // probably doesn't map to C's _Complex correctly.

+ 3 - 1
src/lib.rs

@@ -59,6 +59,8 @@
 
 extern crate num_traits;
 extern crate num_integer;
+#[cfg(feature = "complex")]
+extern crate num_complex;
 #[cfg(feature = "num-bigint")]
 extern crate num_bigint;
 #[cfg(feature = "num-rational")]
@@ -96,7 +98,7 @@ use std::ops::{Mul};
 
 #[cfg(feature = "num-bigint")]
 pub use num_bigint as bigint;
-pub mod complex;
+pub use num_complex as complex;
 pub use num_integer as integers;
 pub mod iter;
 pub use num_traits as traits;