Remove Named & DiscardLabeled, now unused
And unify everything into either 'Discard' or 'NamedLabeled'
This commit is contained in:
		
							parent
							
								
									18acd0e65f
								
							
						
					
					
						commit
						8ab05509b1
					
				|  | @ -408,15 +408,7 @@ impl<A> Arg<A> { | ||||||
| pub enum ArgName { | pub enum ArgName { | ||||||
|     Discard { |     Discard { | ||||||
|         name: String, |         name: String, | ||||||
|         location: Span, |  | ||||||
|     }, |  | ||||||
|     LabeledDiscard { |  | ||||||
|         label: String, |         label: String, | ||||||
|         name: String, |  | ||||||
|         location: Span, |  | ||||||
|     }, |  | ||||||
|     Named { |  | ||||||
|         name: String, |  | ||||||
|         location: Span, |         location: Span, | ||||||
|     }, |     }, | ||||||
|     NamedLabeled { |     NamedLabeled { | ||||||
|  | @ -429,8 +421,15 @@ pub enum ArgName { | ||||||
| impl ArgName { | impl ArgName { | ||||||
|     pub fn get_variable_name(&self) -> Option<&str> { |     pub fn get_variable_name(&self) -> Option<&str> { | ||||||
|         match self { |         match self { | ||||||
|             ArgName::Discard { .. } | ArgName::LabeledDiscard { .. } => None, |             ArgName::Discard { .. } => None, | ||||||
|             ArgName::NamedLabeled { name, .. } | ArgName::Named { name, .. } => Some(name), |             ArgName::NamedLabeled { name, .. } => Some(name), | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     pub fn get_label(&self) -> String { | ||||||
|  |         match self { | ||||||
|  |             ArgName::Discard { label, .. } => label.to_string(), | ||||||
|  |             ArgName::NamedLabeled { label, .. } => label.to_string(), | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -1330,10 +1330,8 @@ impl<'comments> Formatter<'comments> { | ||||||
| 
 | 
 | ||||||
|     fn docs_fn_arg_name<'a>(&mut self, arg_name: &'a ArgName) -> Document<'a> { |     fn docs_fn_arg_name<'a>(&mut self, arg_name: &'a ArgName) -> Document<'a> { | ||||||
|         match arg_name { |         match arg_name { | ||||||
|             ArgName::Named { .. } | ArgName::Discard { .. } => "".to_doc(), |             ArgName::Discard { .. } => "".to_doc(), | ||||||
|             ArgName::LabeledDiscard { label, .. } | ArgName::NamedLabeled { label, .. } => { |             ArgName::NamedLabeled { label, .. } => label.to_doc().append(": "), | ||||||
|                 label.to_doc().append(": ") |  | ||||||
|             } |  | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  | @ -1591,9 +1589,8 @@ impl<'comments> Formatter<'comments> { | ||||||
| impl<'a> Documentable<'a> for &'a ArgName { | impl<'a> Documentable<'a> for &'a ArgName { | ||||||
|     fn to_doc(self) -> Document<'a> { |     fn to_doc(self) -> Document<'a> { | ||||||
|         match self { |         match self { | ||||||
|             ArgName::Named { name, .. } | ArgName::Discard { name, .. } => name.to_doc(), |             ArgName::Discard { name, .. } => name.to_doc(), | ||||||
|             ArgName::LabeledDiscard { label, name, .. } |             ArgName::NamedLabeled { label, name, .. } => { | ||||||
|             | ArgName::NamedLabeled { label, name, .. } => { |  | ||||||
|                 if label == name { |                 if label == name { | ||||||
|                     name.to_doc() |                     name.to_doc() | ||||||
|                 } else { |                 } else { | ||||||
|  |  | ||||||
|  | @ -496,13 +496,14 @@ pub fn fn_param_parser() -> impl Parser<Token, ast::UntypedArg, Error = ParseErr | ||||||
|     choice(( |     choice(( | ||||||
|         select! {Token::Name {name} => name} |         select! {Token::Name {name} => name} | ||||||
|             .then(select! {Token::DiscardName {name} => name}) |             .then(select! {Token::DiscardName {name} => name}) | ||||||
|             .map_with_span(|(label, name), span| ast::ArgName::LabeledDiscard { |             .map_with_span(|(label, name), span| ast::ArgName::Discard { | ||||||
|                 label, |                 label, | ||||||
|                 name, |                 name, | ||||||
|                 location: span, |                 location: span, | ||||||
|             }), |             }), | ||||||
|         select! {Token::DiscardName {name} => name}.map_with_span(|name, span| { |         select! {Token::DiscardName {name} => name}.map_with_span(|name, span| { | ||||||
|             ast::ArgName::Discard { |             ast::ArgName::Discard { | ||||||
|  |                 label: name.clone(), | ||||||
|                 name, |                 name, | ||||||
|                 location: span, |                 location: span, | ||||||
|             } |             } | ||||||
|  | @ -536,13 +537,17 @@ pub fn anon_fn_param_parser() -> impl Parser<Token, ast::UntypedArg, Error = Par | ||||||
|     choice(( |     choice(( | ||||||
|         select! {Token::DiscardName {name} => name}.map_with_span(|name, span| { |         select! {Token::DiscardName {name} => name}.map_with_span(|name, span| { | ||||||
|             ast::ArgName::Discard { |             ast::ArgName::Discard { | ||||||
|  |                 label: name.clone(), | ||||||
|                 name, |                 name, | ||||||
|                 location: span, |                 location: span, | ||||||
|             } |             } | ||||||
|         }), |         }), | ||||||
|         select! {Token::Name {name} => name}.map_with_span(|name, span| ast::ArgName::Named { |         select! {Token::Name {name} => name}.map_with_span(|name, span| { | ||||||
|  |             ast::ArgName::NamedLabeled { | ||||||
|  |                 label: name.clone(), | ||||||
|                 name, |                 name, | ||||||
|                 location: span, |                 location: span, | ||||||
|  |             } | ||||||
|         }), |         }), | ||||||
|     )) |     )) | ||||||
|     .then(just(Token::Colon).ignore_then(type_parser()).or_not()) |     .then(just(Token::Colon).ignore_then(type_parser()).or_not()) | ||||||
|  | @ -1151,11 +1156,13 @@ pub fn expr_parser( | ||||||
|                         .map(|(index, a)| match a { |                         .map(|(index, a)| match a { | ||||||
|                             ParserArg::Arg(arg) => *arg, |                             ParserArg::Arg(arg) => *arg, | ||||||
|                             ParserArg::Hole { location, label } => { |                             ParserArg::Hole { location, label } => { | ||||||
|  |                                 let name = format!("{}__{}", CAPTURE_VARIABLE, index); | ||||||
|                                 holes.push(ast::Arg { |                                 holes.push(ast::Arg { | ||||||
|                                     location: Span::empty(), |                                     location: Span::empty(), | ||||||
|                                     annotation: None, |                                     annotation: None, | ||||||
|                                     arg_name: ast::ArgName::Named { |                                     arg_name: ast::ArgName::NamedLabeled { | ||||||
|                                         name: format!("{}__{}", CAPTURE_VARIABLE, index), |                                         label: name.clone(), | ||||||
|  |                                         name, | ||||||
|                                         location: Span::empty(), |                                         location: Span::empty(), | ||||||
|                                     }, |                                     }, | ||||||
|                                     tipo: (), |                                     tipo: (), | ||||||
|  |  | ||||||
|  | @ -905,7 +905,8 @@ fn anonymous_function() { | ||||||
|                             location: Span::new((), 39..67), |                             location: Span::new((), 39..67), | ||||||
|                             is_capture: false, |                             is_capture: false, | ||||||
|                             arguments: vec KtorZ
						KtorZ