Crate eventstreams[][src]

Expand description

eventstreams

The eventstreams crate provides a convenient, typed, wrapper around Wikimedia’s EventStreams live recent changes feed.

use eventstreams::{Event,StreamExt};

let stream = eventstreams::stream();
eventstreams::pin_mut!(stream);
while let Some(event) = stream.next().await {
   match event {
       Event::Edit(edit) => {
           println!(
               "{}: {} edited {}",
               &edit.server_name, &edit.user, &edit.title
           );
       }
       Event::Log(log) => {
           println!(
               "{}: {} performed {}/{} on {}",
               &log.server_name,
               &log.user,
               &log.log_type,
               &log.log_action,
               &log.title
           );
       }
   }
}

Macros

pin_mut

Pins a value on the stack.

Structs

EditEvent

Represents an edit

LogEvent

Represents a log entry

Enums

Event

Traits

Stream

A stream of values produced asynchronously.

StreamExt

An extension trait for Streams that provides a variety of convenient combinator functions.

Functions

stream