[][src]Function twitchchat::decode

pub fn decode(
    input: &str
) -> impl Iterator<Item = Result<Message<&str>, ParseError>> + '_

Tries to decode potentially many messages from this input string

Example

let input = ":test!test@test JOIN #museun\r\n:test!test@test JOIN #shaken_bot\r\n";

let expected = &[
    messages::Raw {
        raw: ":test!test@test JOIN #museun\r\n",
        tags: Tags::default(),
        prefix: Some(decode::Prefix::User { nick: "test" }),
        command: "JOIN",
        args: "#museun",
        data: None,
    },
    messages::Raw {
        raw: ":test!test@test JOIN #shaken_bot\r\n",
        tags: Tags::default(),
        prefix: Some(decode::Prefix::User { nick: "test" }),
        command: "JOIN",
        args: "#shaken_bot",
        data: None,
    },
];

for (message, expected) in decode(&input).zip(expected.iter()) {
    let msg = message.expect("valid message");
    assert_eq!(msg, *expected);
}