logo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
//! The `primitives` prelude.
//!
//! The purpose of this module is to alleviate imports of many common primitives
//! traits by adding a glob import to the top of primitives heavy modules:
//!
//! ```
//! # #![allow(unused_imports)]
//! use primitives::prelude::*;
//! ```

mod enums;
pub use self::enums::*;

mod traits;
pub use self::traits::*;

mod canvas;
pub use canvas::*;

pub mod color;

/// This is the basic glue for the  UX Framework
///
pub trait Object: 'static {}

/// Marks structures as framework [Object]'s
///
pub trait Is<T: Object>: AsRef<T> + 'static {}

pub use crate::foundation::colorspace::{
    Color,
    prelude::*
};

/// Creates a structure with zero values.
///
/// This interface is obsolete.
///
pub trait Zero {
    /// Creates a structure with zero values.
    fn zero() -> Self;
}

/// Creates a structure with values equal to one.
///
/// This interface is obsolete.
///
pub trait One {
    /// Creates a structure with values equal to one.
    fn one() -> Self;
}