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
65
66
67
68
69
70
71
72
73
74
75
76
77
#[macro_use]
mod policies;
#[macro_use]
mod opengl;
#[macro_use]
mod utility;
pub mod uses {
pub use hashbrown::{HashMap, HashSet};
pub use std::borrow::{self, Borrow, ToOwned};
pub use std::cell::{Cell, RefCell, UnsafeCell};
pub use std::collections::{BTreeMap, BTreeSet, VecDeque};
pub use std::marker::PhantomData as Dummy;
pub use std::{char, cmp, fmt, fmt::Debug, hash, mem, ops, path, path::Path, ptr, rc::Rc, rc::Weak, slice, time};
pub mod iter {
pub use std::iter::*;
pub fn counter() -> impl Iterator<Item = usize> {
successors(Some(0), |n| Some(n + 1))
}
}
pub mod ord {
pub use std::cmp::Ordering::*;
}
pub mod sync {
pub use super::sync_pre::*;
pub use std::thread::{self, JoinHandle};
pub use std::{fs, io};
}
pub mod asyn {
pub use super::sync_pre::*;
pub use smol::{prelude::Future, Task};
pub mod task {
pub use smol::{block_on, future::poll_once, spawn};
}
pub mod pre {
pub use smol::{prelude::*, unblock, Unblock};
}
pub use smol::{fs, io};
}
mod sync_pre {
pub use chan::{Receiver, Sender};
pub use flume as chan;
pub use std::sync::{atomic::*, Arc, Barrier, Mutex, Once};
}
#[cfg(feature = "adv_fs")]
pub use serde::{de::DeserializeOwned, Deserialize, Serialize};
#[cfg(feature = "adv_fs")]
pub mod SERDE {
pub use bincode::{deserialize as FromVec, serialize as ToVec};
pub use serde_json::{from_str as FromStr, to_string as ToStr};
pub mod uses {
pub use serde::{de::*, ser::*, *};
pub use std::fmt::Formatter;
pub use std::fmt::Result as FmtRes;
}
}
pub use super::{
policies::{adapters, chksum, files as FS, logging},
utility::profiling,
};
pub mod math {
pub use super::super::utility::tuple::*;
}
pub use super::policies::{casts::*, derives::TrivialBound, math::*, rand, type_tools, unsafe_static::*};
pub use super::utility::{cached_str::CachedStr, ext::*, prefetch, slicing};
pub use super::{GL, GL::types::*};
pub use {bitflags::bitflags, const_format, num_cpus, trait_set::trait_set}; pub use {nalgebra as na, nalgebra_glm as glm};
}
pub mod events {
pub use super::policies::events::*;
}
pub mod GL {
pub use super::{opengl::opengl::*, policies::window};
}