small api changes

This commit is contained in:
nora 2021-12-30 13:50:52 +01:00
parent b3fde273d6
commit 78f8382502
3 changed files with 8 additions and 10 deletions

View file

@ -1,8 +1,6 @@
disallowed-types = [
# we want to use our custom HashMap/HashSet from `values.rs`, so that consumers can choose between which HashMap they want
"std::collections::HashMap",
"std::collections::HashSet",
# we want to use bumpalo::collections::Vec, this can be removed later I guess
"std::collections::Vec",
"std::boxed::Box",
{ path = "std::collections::HashMap", reason = "may be fxhash or siphash, depending on the feature, stay flexible" },
{ path = "std::collections::HashSet", reason = "may be fxhash or siphash, depending on the feature, stay flexible" },
{ path = "std::collections::Vec", reason = "we generally want to use bumpalos collections" },
{ path = "std::boxed::Box", reason = "we generally want to use bumpalos allocation" },
]

View file

@ -104,7 +104,7 @@ pub struct Lexer<'code> {
}
impl<'code> Lexer<'code> {
pub fn lex(code: &'code str) -> Self {
pub fn new(code: &'code str) -> Self {
Self {
code: code.char_indices().peekable(),
src: code,
@ -416,7 +416,7 @@ mod test {
type StdString = std::string::String;
fn lex_types(str: &str) -> Vec<TokenType> {
let lexer = Lexer::lex(str);
let lexer = Lexer::new(str);
lexer.map(|token| token.unwrap().kind).collect::<Vec<_>>()
}

View file

@ -10,14 +10,14 @@ mod value;
use crate::ast::Program;
use bumpalo::Bump;
pub use lex::*;
pub use parse::*;
pub fn run_program(program: &str) {
let lexer = lex::Lexer::lex(program);
let ast_alloc = Bump::new();
let lexer = lex::Lexer::new(program);
let ast = parse::parse(lexer, &ast_alloc);
match ast {