///|
// Tree operations for movable tree containers.
pub(all) enum TreeOp {
Create(
target~ : @types.TreeID,
parent~ : @types.TreeParentId,
position~ : @types.FractionalIndex
)
Move(
target~ : @types.TreeID,
parent~ : @types.TreeParentId,
position~ : @types.FractionalIndex
)
Delete(target~ : @types.TreeID)
} derive(Show)
///|
pub fn TreeOp::target(self : TreeOp) -> @types.TreeID {
match self {
Create(target~, parent=_, position=_) => target
Move(target~, parent=_, position=_) => target
Delete(target~) => target
}
}
///|
pub fn TreeOp::content_len(_self : TreeOp) -> Int {
1
}