layered-nlp 0.1.1

Highly-flexible data-oriented NLP framework
Documentation
use super::*;

fn split_input(input: &str) -> String {
    format!("{:#?}", test_line(input).ll_tokens())
}

#[test]
fn test_tokenizing() {
    let input = ". 1 000.23. € .5";

    insta::assert_display_snapshot!(split_input(&input), @r###"
    [
        LLToken {
            token_idx: 0,
            pos_starts_at: 0,
            pos_ends_at: 1,
            token: Text(
                ".",
                PUNC,
            ),
        },
        LLToken {
            token_idx: 1,
            pos_starts_at: 1,
            pos_ends_at: 2,
            token: Text(
                " ",
                SPACE,
            ),
        },
        LLToken {
            token_idx: 2,
            pos_starts_at: 2,
            pos_ends_at: 3,
            token: Text(
                "1",
                NATN,
            ),
        },
        LLToken {
            token_idx: 3,
            pos_starts_at: 3,
            pos_ends_at: 4,
            token: Text(
                " ",
                SPACE,
            ),
        },
        LLToken {
            token_idx: 4,
            pos_starts_at: 4,
            pos_ends_at: 7,
            token: Text(
                "000",
                NATN,
            ),
        },
        LLToken {
            token_idx: 5,
            pos_starts_at: 7,
            pos_ends_at: 8,
            token: Text(
                ".",
                PUNC,
            ),
        },
        LLToken {
            token_idx: 6,
            pos_starts_at: 8,
            pos_ends_at: 10,
            token: Text(
                "23",
                NATN,
            ),
        },
        LLToken {
            token_idx: 7,
            pos_starts_at: 10,
            pos_ends_at: 11,
            token: Text(
                ".",
                PUNC,
            ),
        },
        LLToken {
            token_idx: 8,
            pos_starts_at: 11,
            pos_ends_at: 12,
            token: Text(
                " ",
                SPACE,
            ),
        },
        LLToken {
            token_idx: 9,
            pos_starts_at: 12,
            pos_ends_at: 13,
            token: Text(
                "€",
                SYMB,
            ),
        },
        LLToken {
            token_idx: 10,
            pos_starts_at: 13,
            pos_ends_at: 14,
            token: Text(
                " ",
                SPACE,
            ),
        },
        LLToken {
            token_idx: 11,
            pos_starts_at: 14,
            pos_ends_at: 15,
            token: Text(
                ".",
                PUNC,
            ),
        },
        LLToken {
            token_idx: 12,
            pos_starts_at: 15,
            pos_ends_at: 16,
            token: Text(
                "5",
                NATN,
            ),
        },
    ]
    "###);
}