lt_rs/alerts/implementations/
read_piece.rs

1use crate::{
2    alerts::ReadPieceAlert,
3    errors::LtrsError,
4    ffi::alerts::read_piece::ffi::{read_piece_alert_get_error, read_piece_alert_get_size},
5    torrent_handle::TorrentHandle,
6};
7
8impl ReadPieceAlert {
9    #[inline(always)]
10    pub fn handle(&self) -> TorrentHandle {
11        self.as_torrent_alert().handle()
12    }
13
14    #[inline(always)]
15    pub fn torrent_name<'a>(&'a self) -> &'a str {
16        self.as_torrent_alert().torrent_name()
17    }
18
19    #[inline(always)]
20    pub fn message(&self) -> String {
21        self.as_torrent_alert().message()
22    }
23
24    #[inline(always)]
25    pub fn piece(&self) {
26        unimplemented!()
27    }
28
29    #[inline(always)]
30    pub fn buffer(&self) {
31        unimplemented!()
32    }
33
34    #[inline(always)]
35    pub fn size(&self) -> i32 {
36        unsafe { read_piece_alert_get_size(self.0) }
37    }
38
39    #[inline(always)]
40    pub fn error(&self) -> LtrsError {
41        unsafe { read_piece_alert_get_error(self.0) }.into()
42    }
43}