Skip to main content

core/num/
complex.rs

1/// A complex number.
2#[derive(Clone, Copy, Debug, PartialEq)]
3#[unstable(feature = "complex_numbers", issue = "154023")]
4#[repr(C)]
5#[lang = "complex"]
6pub struct Complex<T> {
7    /// The real component.
8    pub re: T,
9    /// The imaginary component.
10    pub im: T,
11}
12
13#[unstable(feature = "complex_numbers", issue = "154023")]
14impl<T> Complex<T> {
15    /// Create a new complex number from a real and imaginary component.
16    #[must_use]
17    pub fn new(re: T, im: T) -> Complex<T> {
18        Complex { re, im }
19    }
20}