harn-cli 0.7.60

CLI for the Harn programming language — run, test, REPL, format, and lint
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
use std::path::Path;

use harn_parser::{Parser, SNode};

pub(super) fn parse_resolved_module(path: &Path) -> Option<(String, Vec<SNode>)> {
    let source = harn_modules::read_module_source(path)?;
    let mut lexer = harn_lexer::Lexer::new(&source);
    let tokens = lexer.tokenize().ok()?;
    let mut parser = Parser::new(tokens);
    let program = parser.parse().ok()?;
    Some((source, program))
}