Module complete

Source
Available on crate feature alloc only.
Expand description

Simple to use SML parser that uses dynamic memory allocations (requires alloc feature)

§Examples

use sml_rs::parser::{complete::{parse, File, Message, MessageBody}, common::CloseResponse};

let bytes = [0x76, 0x5, 0xdd, 0x43, 0x44, 0x0, 0x62, 0x0, 0x62, 0x0, 0x72, 0x63, 0x2, 0x1, 0x71, 0x1, 0x63, 0xfd, 0x56, 0x0];

// parse the input data
let result = parse(&bytes);

let expected = File {
    messages: vec![
        Message {
            transaction_id: &[221, 67, 68, 0],
            group_no: 0,
            abort_on_error: 0,
            message_body: MessageBody::CloseResponse(CloseResponse {
                global_signature: None
            })
        }
    ]
};
assert_eq!(result, Ok(expected))

Structs§

File
Top-level SML type. Holds multiple Messages.
GetListResponse
SML_GetList.Res message
Message
An SML message

Enums§

MessageBody
SML message body

Functions§

parse
Parses a slice of bytes into an SML File.

Type Aliases§

List
Vector of SML list entries