Start with Pest Parser
This commit is contained in:
@@ -0,0 +1 @@
|
||||
alpha = { 'a'..'z' | 'A'..'Z' }
|
||||
+17
@@ -4,6 +4,17 @@ use std::io::Write;
|
||||
use anyhow::{Context, Result};
|
||||
use structopt::StructOpt;
|
||||
|
||||
extern crate pest;
|
||||
#[macro_use]
|
||||
extern crate pest_derive;
|
||||
|
||||
use pest::Parser;
|
||||
|
||||
#[derive(Parser)]
|
||||
#[grammar = "grammars/mblf.pest"]
|
||||
struct MblfParser;
|
||||
|
||||
|
||||
#[derive(StructOpt)]
|
||||
struct Cli {
|
||||
#[structopt(parse(from_os_str))]
|
||||
@@ -19,6 +30,12 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||
.with_context(|| format!("could not read source file {:?}", args.input_file))?;
|
||||
|
||||
let mut out = File::create(args.output_file)?;
|
||||
|
||||
let _pairs = MblfParser::parse(Rule::alpha, "a").unwrap();
|
||||
|
||||
|
||||
|
||||
|
||||
out.write_all(&content.as_bytes())?;
|
||||
|
||||
out.sync_all()?;
|
||||
|
||||
Reference in New Issue
Block a user