1use iter_enum::{
2 DoubleEndedIterator, ExactSizeIterator, FusedIterator, IndexedParallelIterator, Iterator,
3 ParallelExtend, ParallelIterator,
4};
5use serde::{Deserialize, Serialize};
6
7pub mod entities;
8pub mod input;
9pub mod storage;
10pub mod utils;
11
12#[derive(Clone, Copy, Hash, Eq, PartialEq, PartialOrd, Debug, Default, Serialize, Deserialize)]
14pub enum Direction {
15 OUT,
16 IN,
17 #[default]
18 BOTH,
19}
20
21#[derive(
22 Iterator,
23 DoubleEndedIterator,
24 ExactSizeIterator,
25 FusedIterator,
26 ParallelIterator,
27 ParallelExtend,
28 IndexedParallelIterator,
29)]
30pub enum DirectionVariants<Out, In, Both> {
31 Out(Out),
32 In(In),
33 Both(Both),
34}