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
52
53
54
55
56
57
58
59
60
61
62
63
64
mod angle;
mod funcs;
mod mat2;
mod mat3;
mod mat4;
mod quat;
#[cfg(any(not(target_feature = "sse2"), feature = "scalar-math"))]
mod quat_f32;
#[cfg(all(target_feature = "sse2", not(feature = "scalar-math")))]
mod quat_sse2;
#[cfg(feature = "transform-types")]
mod transform;
mod vec2;
mod vec3;
#[cfg(any(not(target_feature = "sse2"), feature = "scalar-math"))]
mod vec3_f32;
#[cfg(all(target_feature = "sse2", not(feature = "scalar-math")))]
mod vec3_sse2;
mod vec4;
#[cfg(any(not(target_feature = "sse2"), feature = "scalar-math"))]
mod vec4_f32;
#[cfg(all(target_feature = "sse2", not(feature = "scalar-math")))]
mod vec4_sse2;
#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
mod x86_utils;

pub use angle::*;
pub(crate) use funcs::scalar_sin_cos;
pub use mat2::*;
pub use mat3::*;
pub use mat4::*;
pub use quat::quat;
#[cfg(any(not(target_feature = "sse2"), feature = "scalar-math"))]
pub use quat_f32::*;
#[cfg(all(target_feature = "sse2", not(feature = "scalar-math")))]
pub use quat_sse2::*;
#[cfg(feature = "transform-types")]
pub use transform::*;
pub use vec2::*;
pub use vec3::*;
#[cfg(any(not(target_feature = "sse2"), feature = "scalar-math"))]
pub use vec3_f32::*;
#[cfg(all(target_feature = "sse2", not(feature = "scalar-math")))]
pub use vec3_sse2::*;
pub use vec4::*;
#[cfg(any(not(target_feature = "sse2"), feature = "scalar-math"))]
pub use vec4_f32::*;
#[cfg(all(target_feature = "sse2", not(feature = "scalar-math")))]
pub use vec4_sse2::*;

#[cfg(feature = "approx")]
mod glam_approx;
#[cfg(feature = "approx")]
pub use glam_approx::*;

#[cfg(feature = "mint")]
mod glam_mint;
#[cfg(feature = "mint")]
pub use glam_mint::*;

#[cfg(feature = "serde")]
mod glam_serde;
#[cfg(feature = "serde")]
pub use glam_serde::*;