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
use std::{rc::Rc, sync::Arc};

use poly_enum::PolyEnum;

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