fix(parser): get rid of redundant clones on &str

This commit is contained in:
Anand Balakrishnan 2023-10-06 00:27:04 -07:00
parent 81acf06e69
commit 53e0710558
No known key found for this signature in database
2 changed files with 3 additions and 3 deletions

View file

@ -13,7 +13,7 @@ pub use parser::{parser, Expr, Interval};
pub fn parse_str(src: &str) -> Result<argus_core::Expr, Vec<Rich<'_, String>>> {
use chumsky::prelude::{Input, Parser};
let (tokens, lex_errors) = lexer().parse(src.clone()).into_output_errors();
let (tokens, lex_errors) = lexer().parse(src).into_output_errors();
let (parsed, parse_errors) = if let Some(tokens) = &tokens {
parser()

View file

@ -292,8 +292,8 @@ pub fn parser<'tokens, 'src: 'tokens>(
}
.labelled("boolean literal");
let var = select! { Token::Ident(ident) => Expr::Var{ name: ident.clone(), kind: Type::default()} }
.labelled("variable");
let var =
select! { Token::Ident(ident) => Expr::Var{ name: ident, kind: Type::default()} }.labelled("variable");
// Relational ops (<, <=, >, >=, ==, !=) have equal precedence
let relational_op = {