mirror of
https://github.com/loro-dev/loro.git
synced 2025-02-02 02:59:51 +00:00
refactor: reduce op inner content size by 1/6
This commit is contained in:
parent
c0a8d4fc36
commit
dd5c1bea72
5 changed files with 9 additions and 6 deletions
|
@ -391,7 +391,7 @@ impl SharedArena {
|
|||
container,
|
||||
content: crate::op::InnerContent::Future(crate::op::FutureInnerContent::Unknown {
|
||||
prop,
|
||||
value,
|
||||
value: Box::new(value),
|
||||
}),
|
||||
},
|
||||
}
|
||||
|
|
|
@ -1448,7 +1448,7 @@ pub(crate) fn decode_op(
|
|||
// NOTE: The future container type need also try to parse the unknown type
|
||||
ContainerType::Unknown(_) => crate::op::InnerContent::Future(FutureInnerContent::Unknown {
|
||||
prop,
|
||||
value: value.into_owned(),
|
||||
value: Box::new(value.into_owned()),
|
||||
}),
|
||||
};
|
||||
|
||||
|
|
|
@ -378,7 +378,7 @@ fn encode_changes(
|
|||
};
|
||||
JsonOpContent::Future(op::FutureOpWrapper {
|
||||
prop: *prop,
|
||||
value: op::FutureOp::Unknown(value.clone()),
|
||||
value: op::FutureOp::Unknown((**value).clone()),
|
||||
})
|
||||
}
|
||||
#[cfg(feature = "counter")]
|
||||
|
@ -626,7 +626,10 @@ fn decode_op(op: op::JsonOp, arena: &SharedArena, peers: &[PeerID]) -> LoroResul
|
|||
JsonOpContent::Future(op::FutureOpWrapper {
|
||||
prop,
|
||||
value: op::FutureOp::Unknown(value),
|
||||
}) => InnerContent::Future(FutureInnerContent::Unknown { prop, value }),
|
||||
}) => InnerContent::Future(FutureInnerContent::Unknown {
|
||||
prop,
|
||||
value: Box::new(value),
|
||||
}),
|
||||
_ => unreachable!(),
|
||||
},
|
||||
#[cfg(feature = "counter")]
|
||||
|
|
|
@ -83,7 +83,7 @@ pub enum FutureInnerContent {
|
|||
Counter(f64),
|
||||
Unknown {
|
||||
prop: i32,
|
||||
value: OwnedValue,
|
||||
value: Box<OwnedValue>,
|
||||
},
|
||||
}
|
||||
impl FutureInnerContent {
|
||||
|
|
|
@ -933,7 +933,7 @@ pub(crate) fn local_op_to_remote(
|
|||
FutureInnerContent::Unknown { prop, value } => {
|
||||
contents.push(crate::op::RawOpContent::Unknown {
|
||||
prop: *prop,
|
||||
value: value.clone(),
|
||||
value: (**value).clone(),
|
||||
})
|
||||
}
|
||||
},
|
||||
|
|
Loading…
Reference in a new issue