pub struct Peer {
pub address: SocketAddr,
pub is_client: bool,
/* private fields */
}Expand description
A struct representing one peer (peer connection. Can be both a client peer or a connected peer)
Fields§
§address: SocketAddr§is_client: boolImplementations§
Source§impl Peer
impl Peer
Sourcepub fn new(address: SocketAddr, is_client: bool) -> Self
pub fn new(address: SocketAddr, is_client: bool) -> Self
Create a new peer
Sourcepub async fn connect(
peer: Arc<RwLock<Peer>>,
node: Arc<RwLock<Node>>,
stream: TcpStream,
) -> JoinHandle<Result<(), PeerError>>
pub async fn connect( peer: Arc<RwLock<Peer>>, node: Arc<RwLock<Node>>, stream: TcpStream, ) -> JoinHandle<Result<(), PeerError>>
Main connection handler
Sourcepub async fn request(
peer: Arc<RwLock<Peer>>,
message: Message,
) -> Result<Message, PeerError>
pub async fn request( peer: Arc<RwLock<Peer>>, message: Message, ) -> Result<Message, PeerError>
Send a request and wait for the response
Auto Trait Implementations§
impl Freeze for Peer
impl !RefUnwindSafe for Peer
impl Send for Peer
impl Sync for Peer
impl Unpin for Peer
impl !UnwindSafe for Peer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more