X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Futils.rs;h=5f92255e79cad80fcd253f1ba70c4501f7fd9998;hb=caefd218c9f6c43493c28c5cc4ea8828c494830e;hp=f1b0582b1200f539cc433c6751ee8ab0bea2bc95;hpb=bcb64fdab83a4cedf4f604ef84fc27840fb9c2c4;p=rust.git diff --git a/src/utils.rs b/src/utils.rs index f1b0582b120..5f92255e79c 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -81,6 +81,14 @@ pub fn format_visibility(context: &RewriteContext, vis: &Visibility) -> Cow<'sta } } +#[inline] +pub fn format_async(is_async: ast::IsAsync) -> &'static str { + match is_async { + ast::IsAsync::Async { .. } => "async ", + ast::IsAsync::NotAsync => "", + } +} + #[inline] pub fn format_constness(constness: ast::Constness) -> &'static str { match constness { @@ -382,6 +390,7 @@ pub fn colon_spaces(before: bool, after: bool) -> &'static str { } } +#[inline] pub fn left_most_sub_expr(e: &ast::Expr) -> &ast::Expr { match e.node { ast::ExprKind::Call(ref e, _) @@ -398,6 +407,12 @@ pub fn left_most_sub_expr(e: &ast::Expr) -> &ast::Expr { } } +#[inline] pub fn starts_with_newline(s: &str) -> bool { s.starts_with('\n') || s.starts_with("\r\n") } + +#[inline] +pub fn first_line_ends_with(s: &str, c: char) -> bool { + s.lines().next().map_or(false, |l| l.ends_with(c)) +}