grafix-toolbox 0.8.23

Personal collection of opengl and rust tools, also serving as an functional gui crate. See ./gui/elements for premade gui elements
Documentation
pub mod sync {
	pub use super::sync_pre::*;
	pub use chan::{Receiver, Sender};
	pub use crossbeam_channel as chan;
	pub use std::sync::{Barrier, Mutex};
	pub use std::{fs, io};
}
pub mod asyn {
	pub use super::sync_pre::*;
	pub use chan::{Receiver, Sender};
	pub use flume as chan;
	pub use smol::lock::{Barrier, Mutex};
	pub use smol::Unblock;
	pub use smol::{fs, io};
}
mod sync_pre {
	pub mod task {
		pub use smol::{block_on, future::poll_once, spawn, Timer};
	}
	pub use smol::{future, prelude::*, stream, Task};
	pub use std::sync::{atomic::*, OnceLock};
	pub use std::thread::{self, JoinHandle};
}
#[cfg(not(feature = "adv_fs"))]
pub mod ser {}
#[cfg(feature = "adv_fs")]
pub mod ser {
	pub mod SERDE {
		pub use bincode::{deserialize as FromVec, serialize as ToVec};
		pub use serde_json::{from_str as FromStr, to_string as ToStr, to_vec as ToU8};
	}
	pub use serde::{de, Deserialize, Deserializer, Serialize, Serializer};
	pub use std::fmt;
}
pub mod stdlib {
	pub use std::cell::{Cell, RefCell, UnsafeCell};
	pub use std::collections::{BTreeMap, BTreeSet, HashMap, HashSet, VecDeque};
	pub use std::{borrow::Borrow, char, fmt, fmt::Debug, iter, mem, ops, ops::Range, ptr, rc::Rc, rc::Weak, slice, sync::Arc, time};
	pub use std::{cmp::Ordering as ord, marker::PhantomData as Dummy, mem::size_of as type_size};
}
pub mod lib {
	pub use super::{policies::ext::*, policies::pre::*, stdlib::*, GL, GL::types::*};
	pub use {bitflags::bitflags, const_format, num_cpus};
}
pub mod math {
	pub use super::policies::math::{ext::*, la, la::na};
}
pub mod GL {
	pub use super::opengl::{event, pre::*, window};
}

pub use policies::ext::*;

#[macro_use]
mod policies;
#[macro_use]
mod opengl;