poly_enum 0.1.0

Hierarchical polymorphism with enums
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use std::{rc::Rc, sync::Arc};

use poly_enum::PolyEnum;

#[derive(Clone, PolyEnum)]
#[poly_derive(Clone)]
enum AnyPtr {
	#[poly_enum(RcPtr)]
	Arc(Arc<Self>),
	#[poly_enum(BoxPtr)]
	Box(Box<Self>),
	#[poly_enum(RcPtr)]
	Rc(Rc<Self>),
	#[poly_enum(NotAPointer)]
	None,
}