moved parsing into parse module.
This commit is contained in:
parent
92bab91020
commit
16e3b04b4e
7 changed files with 13 additions and 10 deletions
10
src/lib.rs
10
src/lib.rs
|
|
@ -1,11 +1,9 @@
|
||||||
|
pub mod parse;
|
||||||
|
pub mod render;
|
||||||
|
|
||||||
|
use parse::tokens::TokenType;
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
|
||||||
use tokens::TokenType;
|
|
||||||
|
|
||||||
pub mod parser;
|
|
||||||
mod scanner;
|
|
||||||
mod tokens;
|
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub struct Vis {
|
pub struct Vis {
|
||||||
pub structure: Vec<Element>,
|
pub structure: Vec<Element>,
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ fn main() -> anyhow::Result<()> {
|
||||||
return Err(anyhow!("Usage: vis vis-file"));
|
return Err(anyhow!("Usage: vis vis-file"));
|
||||||
} else {
|
} else {
|
||||||
let vis_file = read_file(&args[1])?;
|
let vis_file = read_file(&args[1])?;
|
||||||
let vis = vis::parser::parse_vis(vis_file.as_str())?;
|
let vis = vis::parse::parse_vis(vis_file.as_str())?;
|
||||||
println!("{:?}", vis);
|
println!("{:?}", vis);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
5
src/parse/mod.rs
Normal file
5
src/parse/mod.rs
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
mod scanner;
|
||||||
|
pub mod tokens;
|
||||||
|
pub mod parser;
|
||||||
|
|
||||||
|
pub use parser::parse_vis;
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
use crate::{
|
use crate::{
|
||||||
tokens::{
|
parse::tokens::{
|
||||||
Token,
|
Token,
|
||||||
TokenType::{self, *},
|
TokenType::{self, *},
|
||||||
},
|
},
|
||||||
|
|
@ -8,7 +8,7 @@ use crate::{
|
||||||
use anyhow::anyhow;
|
use anyhow::anyhow;
|
||||||
|
|
||||||
pub fn parse_vis(contents: &str) -> anyhow::Result<Vis> {
|
pub fn parse_vis(contents: &str) -> anyhow::Result<Vis> {
|
||||||
let tokens = crate::scanner::scan(contents)?;
|
let tokens = crate::parse::scanner::scan(contents)?;
|
||||||
// println!("{:?}", tokens);
|
// println!("{:?}", tokens);
|
||||||
let mut parser = Parser::new(tokens);
|
let mut parser = Parser::new(tokens);
|
||||||
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
use unicode_segmentation::UnicodeSegmentation;
|
use unicode_segmentation::UnicodeSegmentation;
|
||||||
|
|
||||||
use crate::tokens::{
|
use crate::parse::tokens::{
|
||||||
Token,
|
Token,
|
||||||
TokenType::{self, *},
|
TokenType::{self, *},
|
||||||
KEYWORDS,
|
KEYWORDS,
|
||||||
0
src/render/mod.rs
Normal file
0
src/render/mod.rs
Normal file
Loading…
Add table
Reference in a new issue