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
pub use std::{
    array::IntoIter,
    cell::RefCell,
    cmp::{Ord, Ordering},
    collections::{btree_map::Entry, BTreeMap, BTreeSet, HashMap, VecDeque},
    fmt::{format, Debug, Display, Write},
    io::{self},
    mem::{self, replace},
    ops::{Add, BitAnd, BitOr, BitOrAssign, BitXor, Neg, Not, Range, Sub},
    rc::Rc,
    borrow::Borrow
};

pub use crate::bset::*;

pub type Map<K, V> = BTreeMap<K, V>;
pub type Set<V> = BTreeSet<V>;


// pub fn mute<T, U>(e: T) -> U {
//     unsafe { std::mem::transmute_copy(&e) }
// }

pub fn zero<T>() -> T {
    unsafe { std::mem::zeroed() }
}

#[allow(dead_code)]
pub fn defo<T:Default>() -> T {
     T::default() 
}