| 827 | } |
| 828 | |
| 829 | fn decode_close(mut buf: Cursor) -> Result<FrontendMessage, io::Error> { |
| 830 | match buf.read_byte()? { |
| 831 | b'S' => Ok(FrontendMessage::CloseStatement { |
| 832 | name: buf.read_cstr()?.to_owned(), |
| 833 | }), |
| 834 | b'P' => Ok(FrontendMessage::ClosePortal { |
| 835 | name: buf.read_cstr()?.to_owned(), |
| 836 | }), |
| 837 | b => Err(input_err(format!( |
| 838 | "invalid type byte in close message: {}", |
| 839 | b |
| 840 | ))), |
| 841 | } |
| 842 | } |
| 843 | |
| 844 | fn decode_describe(mut buf: Cursor) -> Result<FrontendMessage, io::Error> { |
| 845 | let first_char = buf.read_byte()?; |