Skip to content

Commit f14998e

Browse files
authored
Merge pull request #127 from blackbeam/rows-flags-raw
Add flags_raw() methods for rows events
2 parents 3505a5d + bf77411 commit f14998e

9 files changed

+54
-14
lines changed

src/binlog/events/delete_rows_event.rs

+6-1
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,16 @@ impl<'a> DeleteRowsEvent<'a> {
5050
self.0.rows_data()
5151
}
5252

53-
/// Returns row flags.
53+
/// Returns event flags (unknown bits are truncated).
5454
pub fn flags(&'a self) -> RowsEventFlags {
5555
self.0.flags()
5656
}
5757

58+
/// Returns raw event flags (unknown bits are preserved).
59+
pub fn flags_raw(&'a self) -> u16 {
60+
self.0.flags_raw()
61+
}
62+
5863
/// Returns an iterator over event's rows given the corresponding `TableMapEvent`.
5964
pub fn rows(&'a self, table_map_event: &'a TableMapEvent<'a>) -> RowsEventRows<'a> {
6065
RowsEventRows::new(&self.0, table_map_event, ParseBuf(self.rows_data()))

src/binlog/events/delete_rows_event_v1.rs

+6-1
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,16 @@ impl<'a> DeleteRowsEventV1<'a> {
4949
self.0.rows_data()
5050
}
5151

52-
/// Returns row flags.
52+
/// Returns event flags (unknown bits are truncated).
5353
pub fn flags(&'a self) -> RowsEventFlags {
5454
self.0.flags()
5555
}
5656

57+
/// Returns raw event flags (unknown bits are preserved).
58+
pub fn flags_raw(&'a self) -> u16 {
59+
self.0.flags_raw()
60+
}
61+
5762
/// Returns an iterator over event's rows given the corresponding `TableMapEvent`.
5863
pub fn rows(&'a self, table_map_event: &'a TableMapEvent<'a>) -> RowsEventRows<'a> {
5964
RowsEventRows::new(&self.0, table_map_event, ParseBuf(self.rows_data()))

src/binlog/events/mod.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -440,15 +440,15 @@ impl BinlogEventHeader {
440440
self.log_pos.0
441441
}
442442

443-
/// Returns the raw event flags.
444-
pub fn flags_raw(&self) -> u16 {
445-
self.flags.0
446-
}
447-
448-
/// Returns the parsed event flags. Unknown bits will be truncated.
443+
/// Returns event flags (unknown bits are truncated).
449444
pub fn flags(&self) -> EventFlags {
450445
self.flags.get()
451446
}
447+
448+
/// Returns raw event flags (unknown bits are preserved).
449+
pub fn flags_raw(&self) -> u16 {
450+
self.flags.0
451+
}
452452
}
453453

454454
impl<'de> MyDeserialize<'de> for BinlogEventHeader {

src/binlog/events/partial_update_rows_event.rs

+6-1
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,16 @@ impl<'a> PartialUpdateRowsEvent<'a> {
5858
self.0.rows_data()
5959
}
6060

61-
/// Returns row flags.
61+
/// Returns event flags (unknown bits are truncated).
6262
pub fn flags(&'a self) -> RowsEventFlags {
6363
self.0.flags()
6464
}
6565

66+
/// Returns raw event flags (unknown bits are preserved).
67+
pub fn flags_raw(&'a self) -> u16 {
68+
self.0.flags_raw()
69+
}
70+
6671
/// Returns an iterator over event's rows given the corresponding `TableMapEvent`.
6772
pub fn rows(&'a self, table_map_event: &'a TableMapEvent<'a>) -> RowsEventRows<'a> {
6873
RowsEventRows::new(&self.0, table_map_event, ParseBuf(self.rows_data()))

src/binlog/events/rows_event.rs

+6-1
Original file line numberDiff line numberDiff line change
@@ -124,11 +124,16 @@ impl<'a> RowsEvent<'a> {
124124
self.rows_data.as_bytes()
125125
}
126126

127-
/// Returns the flags (unknown bits are truncated).
127+
/// Returns event flags (unknown bits are truncated).
128128
pub fn flags(&self) -> RowsEventFlags {
129129
self.flags.get()
130130
}
131131

132+
/// Returns raw event flags (unknown bits are preserved).
133+
pub fn flags_raw(&self) -> u16 {
134+
self.flags.0
135+
}
136+
132137
/// Returns length of this event in bytes.
133138
///
134139
/// This function will be used in `BinlogStruct` implementations for derived events.

src/binlog/events/update_rows_event.rs

+6-1
Original file line numberDiff line numberDiff line change
@@ -59,11 +59,16 @@ impl<'a> UpdateRowsEvent<'a> {
5959
self.0.rows_data()
6060
}
6161

62-
/// Returns row flags.
62+
/// Returns event flags (unknown bits are truncated).
6363
pub fn flags(&'a self) -> RowsEventFlags {
6464
self.0.flags()
6565
}
6666

67+
/// Returns raw event flags (unknown bits are preserved).
68+
pub fn flags_raw(&'a self) -> u16 {
69+
self.0.flags_raw()
70+
}
71+
6772
/// Returns an iterator over event's rows given the corresponding `TableMapEvent`.
6873
pub fn rows(&'a self, table_map_event: &'a TableMapEvent<'a>) -> RowsEventRows<'a> {
6974
RowsEventRows::new(&self.0, table_map_event, ParseBuf(self.rows_data()))

src/binlog/events/update_rows_event_v1.rs

+6-1
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,16 @@ impl<'a> UpdateRowsEventV1<'a> {
5656
self.0.rows_data()
5757
}
5858

59-
/// Returns row flags.
59+
/// Returns event flags (unknown bits are truncated).
6060
pub fn flags(&'a self) -> RowsEventFlags {
6161
self.0.flags()
6262
}
6363

64+
/// Returns raw event flags (unknown bits are preserved).
65+
pub fn flags_raw(&'a self) -> u16 {
66+
self.0.flags_raw()
67+
}
68+
6469
/// Returns an iterator over event's rows given the corresponding `TableMapEvent`.
6570
pub fn rows(&'a self, table_map_event: &'a TableMapEvent<'a>) -> RowsEventRows<'a> {
6671
RowsEventRows::new(&self.0, table_map_event, ParseBuf(self.rows_data()))

src/binlog/events/write_rows_event.rs

+6-1
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,16 @@ impl<'a> WriteRowsEvent<'a> {
5151
self.0.rows_data()
5252
}
5353

54-
/// Returns row flags.
54+
/// Returns event flags (unknown bits are truncated).
5555
pub fn flags(&'a self) -> RowsEventFlags {
5656
self.0.flags()
5757
}
5858

59+
/// Returns raw event flags (unknown bits are preserved).
60+
pub fn flags_raw(&'a self) -> u16 {
61+
self.0.flags_raw()
62+
}
63+
5964
/// Returns an iterator over event's rows given the corresponding `TableMapEvent`.
6065
pub fn rows(&'a self, table_map_event: &'a TableMapEvent<'a>) -> RowsEventRows<'a> {
6166
RowsEventRows::new(&self.0, table_map_event, ParseBuf(self.rows_data()))

src/binlog/events/write_rows_event_v1.rs

+6-1
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,16 @@ impl<'a> WriteRowsEventV1<'a> {
4949
self.0.rows_data()
5050
}
5151

52-
/// Returns row flags.
52+
/// Returns event flags (unknown bits are truncated).
5353
pub fn flags(&'a self) -> RowsEventFlags {
5454
self.0.flags()
5555
}
5656

57+
/// Returns raw event flags (unknown bits are preserved).
58+
pub fn flags_raw(&'a self) -> u16 {
59+
self.0.flags_raw()
60+
}
61+
5762
/// Returns an iterator over event's rows given the corresponding `TableMapEvent`.
5863
pub fn rows(&'a self, table_map_event: &'a TableMapEvent<'a>) -> RowsEventRows<'a> {
5964
RowsEventRows::new(&self.0, table_map_event, ParseBuf(self.rows_data()))

0 commit comments

Comments
 (0)