@@ -52,9 +52,7 @@ pub enum Message {
52
52
53
53
/// A number identifying a message to determine how it is encoded on the wire.
54
54
#[ derive( Clone , Copy ) ]
55
- pub struct MessageType {
56
- number : u16 ,
57
- }
55
+ pub struct MessageType ( u16 ) ;
58
56
59
57
impl Message {
60
58
/// Returns the type that was used to decode the message payload.
@@ -91,13 +89,13 @@ impl Message {
91
89
impl MessageType {
92
90
/// Returns whether the message type is even, indicating both endpoints must support it.
93
91
pub fn is_even ( & self ) -> bool {
94
- ( self . number & 1 ) == 0
92
+ ( self . 0 & 1 ) == 0
95
93
}
96
94
}
97
95
98
96
impl :: std:: fmt:: Display for MessageType {
99
97
fn fmt ( & self , f : & mut :: std:: fmt:: Formatter ) -> :: std:: fmt:: Result {
100
- write ! ( f, "{}" , self . number )
98
+ write ! ( f, "{}" , self . 0 )
101
99
}
102
100
}
103
101
@@ -180,7 +178,7 @@ pub fn read<R: std::io::Read>(buffer: &mut R) -> Result<Message, msgs::DecodeErr
180
178
Ok ( Message :: ChannelUpdate ( Readable :: read ( buffer) ?) )
181
179
} ,
182
180
_ => {
183
- Ok ( Message :: Unknown ( MessageType { number : message_type } ) )
181
+ Ok ( Message :: Unknown ( MessageType ( message_type) ) )
184
182
} ,
185
183
}
186
184
}
@@ -209,7 +207,7 @@ pub trait Encode: Writeable {
209
207
/// Returns the type identifying the message payload. Convenience method for accessing
210
208
/// [`TYPE`](TYPE).
211
209
fn type_id ( & self ) -> MessageType {
212
- MessageType { number : Self :: TYPE }
210
+ MessageType ( Self :: TYPE )
213
211
}
214
212
215
213
/// Writes the type and message payload to the given data buffer.
@@ -364,7 +362,7 @@ mod tests {
364
362
let mut reader = :: std:: io:: Cursor :: new ( buffer) ;
365
363
let message = read ( & mut reader) ?;
366
364
match message {
367
- Message :: Unknown ( MessageType { number : std:: u16:: MAX } ) => Ok ( ( ) ) ,
365
+ Message :: Unknown ( MessageType ( std:: u16:: MAX ) ) => Ok ( ( ) ) ,
368
366
_ => panic ! ( "Expected message type {}; found: {}" , std:: u16 :: MAX , message. type_id( ) ) ,
369
367
}
370
368
}
@@ -400,13 +398,13 @@ mod tests {
400
398
401
399
#[ test]
402
400
fn is_even_message_type ( ) {
403
- let message = Message :: Unknown ( MessageType { number : 42 } ) ;
401
+ let message = Message :: Unknown ( MessageType ( 42 ) ) ;
404
402
assert ! ( message. type_id( ) . is_even( ) ) ;
405
403
}
406
404
407
405
#[ test]
408
406
fn is_odd_message_type ( ) {
409
- let message = Message :: Unknown ( MessageType { number : 43 } ) ;
407
+ let message = Message :: Unknown ( MessageType ( 43 ) ) ;
410
408
assert ! ( !message. type_id( ) . is_even( ) ) ;
411
409
}
412
410
}
0 commit comments