specmc-base 0.1.5

A library with common code for parsing Minecraft specification.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use specmc_base::{
    parse::{Identifier, Literal, Parse},
    tokenize::tokenize,
};

fn main() {
    let mut tokens: Vec<String> = tokenize("true 42 123.0 \"string\" cool_identifier");
    tokens.reverse();

    let lit_bool: Literal = Literal::parse(&mut tokens).unwrap();
    let lit_int: Literal = Literal::parse(&mut tokens).unwrap();
    let lit_float: Literal = Literal::parse(&mut tokens).unwrap();
    let lit_str: Literal = Literal::parse(&mut tokens).unwrap();
    let ident: Identifier = Identifier::parse(&mut tokens).unwrap();

    println!("{lit_bool:?} {lit_int:?} {lit_float:?} {lit_str:?} {ident:?}");
}