1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
use std::rc::Rc;
use super::StringRef;
pub enum WriteItem<T = String> where T : StringRef {
String(Rc<T>),
Indent,
NewLine,
Tab,
Space,
}
impl<TString> Clone for WriteItem<TString> where TString : StringRef {
fn clone(&self) -> WriteItem<TString> {
match self {
WriteItem::Indent => WriteItem::Indent,
WriteItem::NewLine => WriteItem::NewLine,
WriteItem::Tab => WriteItem::Tab,
WriteItem::Space => WriteItem::Space,
WriteItem::String(text) => WriteItem::String(text.clone()),
}
}
}