1
0
mirror of https://github.com/actix/actix-website synced 2024-11-23 16:31:08 +01:00

Format example code in sec-3-address.md (#427)

* Format example code in sec-3-address.md

* Remove unnecessary return type annotations in sec-3-address.md
This commit is contained in:
Zirconium409122 2024-08-05 12:56:11 +02:00 committed by GitHub
parent fd0450917d
commit b8555d96e8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -13,6 +13,7 @@ Here is an example of `Actor::start()` method usage. In this example `MyActor` a
```rust
struct MyActor;
impl Actor for MyActor {
type Context = Context<Self>;
}
@ -113,7 +114,8 @@ impl Handler<Subscribe> for OrderEvents {
/// Subscribe to ship message
impl Handler<Ship> for OrderEvents {
type Result = ();
fn handle(&mut self, msg: Ship, ctx: &mut Self::Context) -> Self::Result {
fn handle(&mut self, msg: Ship, ctx: &mut Self::Context) {
self.notify(msg.0);
System::current().stop();
}
@ -121,25 +123,31 @@ impl Handler<Ship> for OrderEvents {
/// Email Subscriber
struct EmailSubscriber;
impl Actor for EmailSubscriber {
type Context = Context<Self>;
}
impl Handler<OrderShipped> for EmailSubscriber {
type Result = ();
fn handle(&mut self, msg: OrderShipped, _ctx: &mut Self::Context) -> Self::Result {
fn handle(&mut self, msg: OrderShipped, _ctx: &mut Self::Context) {
println!("Email sent for order {}", msg.0)
}
}
/// SMS Subscriber
struct SmsSubscriber;
impl Actor for SmsSubscriber {
type Context = Context<Self>;
}
impl Handler<OrderShipped> for SmsSubscriber {
type Result = ();
fn handle(&mut self, msg: OrderShipped, _ctx: &mut Self::Context) -> Self::Result {
fn handle(&mut self, msg: OrderShipped, _ctx: &mut Self::Context) {
println!("SMS sent for order {}", msg.0)
}
@ -150,9 +158,11 @@ async fn main() -> Result<(), actix::MailboxError> {
let email_subscriber = Subscribe(EmailSubscriber {}.start().recipient());
let sms_subscriber = Subscribe(SmsSubscriber {}.start().recipient());
let order_event = OrderEvents::new().start();
order_event.send(email_subscriber).await?;
order_event.send(sms_subscriber).await?;
order_event.send(Ship(1)).await?;
Ok(())
}
```