GQTC4TJABT3U6DDUBSILVUIGW2XHAHEDDT2QMJYLKT4ONSIV4PRQC
7GQSGIV5ZRNFT4TRZCG6AW54BZTPSSS75O4HQADOVGMYKO7P6GJQC
PIQCNEEBNHZDYOU2O7667XBB6D3V2MUALRRVJX6VO5BGYR7LTYRQC
SXEYMYF7P4RZMZ46WPL4IZUTSQ2ATBWYZX7QNVMS3SGOYXYOHAGQC
CCLLB7OIFNFYJZTG3UCI7536TOCWSCSXR67VELSB466R24WLJSDAC
GA3P7FOMATKDOGCZDYWLZJHAUNOWMRIP3BXTYFEH7PNWTTYYVLIAC
DNQHXWRZF6EWII3RGQ6HPGFD47BOOFH4FCQHSCACBS3RLQO3DNIQC
TVVW53HZGYPODAXEQ4BFZNSPBOFG6JEDVOKIYIDZMWFAMOBKOR2QC
I24UEJQLCH2SOXA4UHIYWTRDCHSOPU7AFTRUOTX7HZIAV4AZKYEQC
VO5OQW4W2656DIYYRNZ3PO7TQ4JOKQ3GVWE5ALUTYVMX3WMXJOYQC
Z6FWHKCAGF5MJCIG327JK7SYXQ53KM2UVGVE3QL64KDVOUPKQ3HQC
for side in sides {
let h = side.to_base32();
write!(self.w, " [{}]", h.split_at(8).0)?;
}
match sides {
Some((changes, sides)) => {
for side in sides.into_iter() {
let h = side.to_base32();
write!(
self.w,
" [{} {}]",
h.split_at(8).0,
change_message(changes, side)
)?;
}
}
None => (),
};
fn begin_cyclic_conflict(&mut self, id: usize) -> Result<(), std::io::Error> {
self.output_conflict_marker(START_MARKER, id, &[])
fn begin_cyclic_conflict<C: ChangeStore>(&mut self, id: usize) -> Result<(), std::io::Error> {
self.output_conflict_marker::<C>(START_MARKER, id, None)
fn end_conflict(&mut self, id: usize) -> Result<(), std::io::Error> {
self.output_conflict_marker(END_MARKER, id, &[])
fn end_conflict<C: ChangeStore>(&mut self, id: usize) -> Result<(), std::io::Error> {
self.output_conflict_marker::<C>(END_MARKER, id, None)
fn end_cyclic_conflict(&mut self, id: usize) -> Result<(), std::io::Error> {
self.output_conflict_marker(END_MARKER, id, &[])
fn end_cyclic_conflict<C: ChangeStore>(&mut self, id: usize) -> Result<(), std::io::Error> {
self.output_conflict_marker::<C>(END_MARKER, id, None)
for side in sides {
let h = side.to_base32();
write!(self.w, " [{}]", h.split_at(8).0)?;
}
match sides {
Some((changes, sides)) => {
for side in sides {
let h = side.to_base32();
write!(
self.w,
" [{} {}]",
h.split_at(8).0,
change_message(changes, side)
)?;
}
}
None => (),
};
self.output_conflict_marker(START_MARKER, id, &[])
self.output_conflict_marker::<C>(START_MARKER, id, None)
}
}
pub fn change_message<C: ChangeStore>(changes: &C, hash: &Hash) -> String {
match changes.get_header(hash) {
Ok(header) => header.message.lines().next().unwrap().to_string(),
Err(_e) => "".to_string(),
for side in sides {
let h = side.to_base32();
write!(self.w, " [{}]", h.split_at(8).0)?;
}
match sides {
Some((changes, sides)) => {
for side in sides {
let h = side.to_base32();
write!(
self.w,
" [{} {}]",
h.split_at(8).0,
change_message(changes, side)
)?;
}
}
None => (),
};
fn begin_cyclic_conflict(&mut self, id: usize) -> Result<(), std::io::Error> {
self.output_conflict_marker(START_MARKER, id, &[])
fn begin_cyclic_conflict<C: ChangeStore>(&mut self, id: usize) -> Result<(), std::io::Error> {
self.output_conflict_marker::<C>(START_MARKER, id, None)
for side in sides {
let h = side.to_base32();
write!(self.contents_a, " [{}]", h.split_at(8).0)?;
}
match sides {
Some((changes, sides)) => {
for side in sides {
let h = side.to_base32();
write!(
self.contents_a,
" [{} {}]",
h.split_at(8).0,
change_message(changes, side)
)?;
}
}
None => (),
};