use std::fs;

mod parser;
use parser::{Parser};

mod combinators;
use combinators::common::integers::ints::{Digit, Int};

fn main() {

    //run_tests();

    // let source = "src/examples/example_programs/arithmetic/example1.txt";
    // let _file = fs::read_to_string(source).expect("File was not found or could not be read");

    // let res = Expr.parse(_file.as_str());
    // println!("{:#?}", res);

    let mut count = 0;
    let max = 1000000;

    // loop {
    //     if count == max {break};
    //     ExprOpt.parse(format!("221 + {} + 8 - 11077770", count).as_str());
    //     count += 1
    // }

    loop {
        if count == max {break};
        
        print!("{:#?}", Int.parse(format!("{}", count).as_str()));
        count += 1
    }

    //println!("{:#?}", Digit_opt_more.parse(format!("9").as_str()));

    // println!("{:#?}", Expr.parse(format!("221 - {} + 8 + 11077770", 4).as_str()));
    // println!("{:#?}", ExprOpt.parse(format!("221 - {} + 8 + 11077770", 4).as_str()));

    // let source = "src/examples/brainflakes/hello_world.bf";
    // let file = fs::read_to_string(source).expect("File was not found or could not be read");
    // let res = brainflakes_parser::BrainFuck.parse(file.as_str()).expect("Incorrect parse");
    // println!("{}", res);

}