From 7ad8babf17ee703e32692b0b428238ef9ece121d Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 22 Dec 2022 09:35:39 +0100 Subject: [PATCH] Rename ArgName::{Discard,NamedLabeled} as ArgName::{Discarded,Named} Now that the other variants are gone, this is clearer. --- crates/aiken-lang/src/ast.rs | 12 +++++------ crates/aiken-lang/src/format.rs | 7 +++---- crates/aiken-lang/src/parser.rs | 30 ++++++++++++--------------- crates/aiken-lang/src/tests/parser.rs | 22 ++++++++++---------- crates/aiken-lang/src/tipo/expr.rs | 4 ++-- crates/aiken-lang/src/uplc.rs | 2 +- 6 files changed, 36 insertions(+), 41 deletions(-) diff --git a/crates/aiken-lang/src/ast.rs b/crates/aiken-lang/src/ast.rs index 68c2b795..093326fb 100644 --- a/crates/aiken-lang/src/ast.rs +++ b/crates/aiken-lang/src/ast.rs @@ -406,12 +406,12 @@ impl Arg { #[derive(Debug, Clone, PartialEq, Eq)] pub enum ArgName { - Discard { + Discarded { name: String, label: String, location: Span, }, - NamedLabeled { + Named { name: String, label: String, location: Span, @@ -421,15 +421,15 @@ pub enum ArgName { impl ArgName { pub fn get_variable_name(&self) -> Option<&str> { match self { - ArgName::Discard { .. } => None, - ArgName::NamedLabeled { name, .. } => Some(name), + ArgName::Discarded { .. } => None, + ArgName::Named { name, .. } => Some(name), } } pub fn get_label(&self) -> String { match self { - ArgName::Discard { label, .. } => label.to_string(), - ArgName::NamedLabeled { label, .. } => label.to_string(), + ArgName::Discarded { label, .. } => label.to_string(), + ArgName::Named { label, .. } => label.to_string(), } } } diff --git a/crates/aiken-lang/src/format.rs b/crates/aiken-lang/src/format.rs index 8a366830..ef07fea0 100644 --- a/crates/aiken-lang/src/format.rs +++ b/crates/aiken-lang/src/format.rs @@ -1330,8 +1330,8 @@ impl<'comments> Formatter<'comments> { fn docs_fn_arg_name<'a>(&mut self, arg_name: &'a ArgName) -> Document<'a> { match arg_name { - ArgName::Discard { .. } => "".to_doc(), - ArgName::NamedLabeled { label, .. } => label.to_doc().append(": "), + ArgName::Discarded { .. } => "".to_doc(), + ArgName::Named { label, .. } => label.to_doc().append(": "), } } @@ -1589,8 +1589,7 @@ impl<'comments> Formatter<'comments> { impl<'a> Documentable<'a> for &'a ArgName { fn to_doc(self) -> Document<'a> { match self { - ArgName::Discard { name, .. } => name.to_doc(), - ArgName::NamedLabeled { label, name, .. } => { + ArgName::Discarded { label, name, .. } | ArgName::Named { label, name, .. } => { if label == name { name.to_doc() } else { diff --git a/crates/aiken-lang/src/parser.rs b/crates/aiken-lang/src/parser.rs index 4129a729..d2e96e14 100644 --- a/crates/aiken-lang/src/parser.rs +++ b/crates/aiken-lang/src/parser.rs @@ -496,13 +496,13 @@ pub fn fn_param_parser() -> impl Parser name} .then(select! {Token::DiscardName {name} => name}) - .map_with_span(|(label, name), span| ast::ArgName::Discard { + .map_with_span(|(label, name), span| ast::ArgName::Discarded { label, name, location: span, }), select! {Token::DiscardName {name} => name}.map_with_span(|name, span| { - ast::ArgName::Discard { + ast::ArgName::Discarded { label: name.clone(), name, location: span, @@ -510,17 +510,15 @@ pub fn fn_param_parser() -> impl Parser name} .then(select! {Token::Name {name} => name}) - .map_with_span(|(label, name), span| ast::ArgName::NamedLabeled { + .map_with_span(|(label, name), span| ast::ArgName::Named { label, name, location: span, }), - select! {Token::Name {name} => name}.map_with_span(|name, span| { - ast::ArgName::NamedLabeled { - label: name.clone(), - name, - location: span, - } + select! {Token::Name {name} => name}.map_with_span(|name, span| ast::ArgName::Named { + label: name.clone(), + name, + location: span, }), )) .then(just(Token::Colon).ignore_then(type_parser()).or_not()) @@ -536,18 +534,16 @@ pub fn anon_fn_param_parser() -> impl Parser name}.map_with_span(|name, span| { - ast::ArgName::Discard { + ast::ArgName::Discarded { label: name.clone(), name, location: span, } }), - select! {Token::Name {name} => name}.map_with_span(|name, span| { - ast::ArgName::NamedLabeled { - label: name.clone(), - name, - location: span, - } + select! {Token::Name {name} => name}.map_with_span(|name, span| ast::ArgName::Named { + label: name.clone(), + name, + location: span, }), )) .then(just(Token::Colon).ignore_then(type_parser()).or_not()) @@ -1160,7 +1156,7 @@ pub fn expr_parser( holes.push(ast::Arg { location: Span::empty(), annotation: None, - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { label: name.clone(), name, location: Span::empty(), diff --git a/crates/aiken-lang/src/tests/parser.rs b/crates/aiken-lang/src/tests/parser.rs index 39709339..012b387d 100644 --- a/crates/aiken-lang/src/tests/parser.rs +++ b/crates/aiken-lang/src/tests/parser.rs @@ -320,7 +320,7 @@ fn plus_binop() { code, ast::UntypedDefinition::Fn(Function { arguments: vec![ast::Arg { - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { label: "a".to_string(), name: "a".to_string(), location: Span::new((), 15..16), @@ -371,7 +371,7 @@ fn pipeline() { code, ast::UntypedDefinition::Fn(Function { arguments: vec![ast::Arg { - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { name: "a".to_string(), label: "thing".to_string(), location: Span::new((), 13..20), @@ -538,7 +538,7 @@ fn let_bindings() { code, ast::UntypedDefinition::Fn(Function { arguments: vec![ast::Arg { - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { label: "a".to_string(), name: "a".to_string(), location: Span::new((), 11..12), @@ -663,7 +663,7 @@ fn block() { code, ast::UntypedDefinition::Fn(Function { arguments: vec![ast::Arg { - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { label: "a".to_string(), name: "a".to_string(), location: Span::new((), 12..13), @@ -757,7 +757,7 @@ fn when() { code, ast::UntypedDefinition::Fn(Function { arguments: vec![ast::Arg { - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { label: "a".to_string(), name: "a".to_string(), location: Span::new((), 12..13), @@ -905,7 +905,7 @@ fn anonymous_function() { location: Span::new((), 39..67), is_capture: false, arguments: vec![ast::Arg { - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { label: "a".to_string(), name: "a".to_string(), location: Span::new((), 43..44), @@ -987,7 +987,7 @@ fn field_access() { code, ast::UntypedDefinition::Fn(Function { arguments: vec![ast::Arg { - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { label: "user".to_string(), name: "user".to_string(), location: Span::new((), 8..12), @@ -1069,7 +1069,7 @@ fn call() { location: Span::new((), 61..82), is_capture: true, arguments: vec![ast::Arg { - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { label: "_capture__0".to_string(), name: "_capture__0".to_string(), location: Span::new((), 0..0), @@ -1095,7 +1095,7 @@ fn call() { location: Span::new((), 65..81), is_capture: false, arguments: vec![ast::Arg { - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { label: "y".to_string(), name: "y".to_string(), location: Span::new((), 69..70), @@ -1194,7 +1194,7 @@ fn record_update() { ast::UntypedDefinition::Fn(Function { arguments: vec![ ast::Arg { - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { label: "user".to_string(), name: "user".to_string(), location: Span::new((), 15..19), @@ -1209,7 +1209,7 @@ fn record_update() { tipo: (), }, ast::Arg { - arg_name: ast::ArgName::NamedLabeled { + arg_name: ast::ArgName::Named { label: "name".to_string(), name: "name".to_string(), location: Span::new((), 27..31), diff --git a/crates/aiken-lang/src/tipo/expr.rs b/crates/aiken-lang/src/tipo/expr.rs index 68c6cf9c..02d99011 100644 --- a/crates/aiken-lang/src/tipo/expr.rs +++ b/crates/aiken-lang/src/tipo/expr.rs @@ -1544,7 +1544,7 @@ impl<'a, 'b> ExprTyper<'a, 'b> { let (body_rigid_names, body_infer) = self.in_new_scope(|body_typer| { for (arg, t) in args.iter().zip(args.iter().map(|arg| arg.tipo.clone())) { match &arg.arg_name { - ArgName::NamedLabeled { name, .. } => { + ArgName::Named { name, .. } => { body_typer.environment.insert_variable( name.to_string(), ValueConstructorVariant::LocalVariable { @@ -1559,7 +1559,7 @@ impl<'a, 'b> ExprTyper<'a, 'b> { arg.location, ); } - ArgName::Discard { .. } => (), + ArgName::Discarded { .. } => (), }; } diff --git a/crates/aiken-lang/src/uplc.rs b/crates/aiken-lang/src/uplc.rs index 9bd3d3d7..8c40ad86 100644 --- a/crates/aiken-lang/src/uplc.rs +++ b/crates/aiken-lang/src/uplc.rs @@ -1851,7 +1851,7 @@ impl<'a> CodeGenerator<'a> { for arg in function.arguments.iter() { match &arg.arg_name { - ArgName::NamedLabeled { name, .. } => { + ArgName::Named { name, .. } => { args.push(name.clone()); } _ => {