From 00ce27baaccbd4cbbc3647956ac905d86de25c26 Mon Sep 17 00:00:00 2001 From: Kevin Amado Date: Wed, 26 Jan 2022 21:54:27 -0500 Subject: [PATCH] feat: handle multiline comments --- README.md | 2 - src/builder.rs | 22 +- src/children.rs | 103 +++- src/rules/pattern.rs | 13 +- tests/cases/apply/out | 16 +- tests/cases/assert/out | 16 +- tests/cases/attr_set/out | 12 +- tests/cases/comments/in | 44 ++ tests/cases/comments/out | 40 ++ tests/cases/dynamic/out | 12 +- tests/cases/inherit/out | 48 +- tests/cases/inherit_from/out | 16 +- tests/cases/key_value/out | 48 +- tests/cases/lambda/out | 16 +- tests/cases/let_in/out | 48 +- tests/cases/paren/out | 12 +- tests/cases/pattern/out | 808 ++++++++++++++++++++++++-------- tests/cases/root/in | 22 +- tests/cases/root/out | 20 +- tests/cases/string_interpol/out | 12 +- tests/cases/with/out | 16 +- 21 files changed, 1041 insertions(+), 305 deletions(-) create mode 100644 tests/cases/comments/in create mode 100644 tests/cases/comments/out diff --git a/README.md b/README.md index bd8098d..a5307a9 100644 --- a/README.md +++ b/README.md @@ -92,8 +92,6 @@ Let's get Alejandra on our systems: Yet there are a few improvements to implement like: - Multiline strings indentation is missing `'' ... ''`. - - Multiline comments indentation is bugged `/* ... */`. - - And many more as community feedback drives. Style is negotiable at this moment. diff --git a/src/builder.rs b/src/builder.rs index 4362e9f..ae9c3c2 100644 --- a/src/builder.rs +++ b/src/builder.rs @@ -71,11 +71,31 @@ fn build_step( match step { crate::builder::Step::Comment(text) => { + let mut lines: Vec = + text.lines().map(|line| line.trim_end().to_string()).collect(); + + lines = lines + .iter() + .enumerate() + .map(|(index, line)| { + if index == 0 { + line.to_string() + } else { + format!( + "{0:<1$} {2}", + "", + 2 * build_ctx.indentation, + line, + ) + } + }) + .collect(); + add_token( builder, build_ctx, rnix::SyntaxKind::TOKEN_COMMENT, - text, + &lines.join("\n"), ); } crate::builder::Step::Dedent => { diff --git a/src/children.rs b/src/children.rs index d46b58d..eb0fffb 100644 --- a/src/children.rs +++ b/src/children.rs @@ -132,21 +132,108 @@ fn dedent_comment(pos: &crate::position::Position, text: &str) -> String { if text.starts_with("#") { text.to_string() } else { - let text = text[2..text.len() - 2] + let mut lines: Vec = text[2..text.len() - 2] .lines() + .map(|line| line.to_string()) + .collect(); + + // If all lines are whitespace just return a compact comment + if lines.iter().all(|line| line.trim().len() == 0) { + return "/**/".to_string(); + } + + // println!("{:?}", lines); + // println!("0\n{0:<1$}/*{2}*/\n", "", pos.column, lines.join("\n")); + + if lines.len() == 1 { + lines.insert(0, "".to_string()); + lines[1] = format!("{0:<1$}{2}", "", pos.column + 2, lines[1]); + } else if lines[0].trim().len() == 0 { + lines[0] = "".to_string(); + } else { + lines.insert(0, format!("{0:<1$}", "", pos.column + 1)); + lines[1] = format!("{0:<1$}{2}", "", pos.column + 2, lines[1]); + } + + // println!("{:?}", lines); + // println!("1\n{0:<1$}/*{2}*/\n", "", pos.column, lines.join("\n")); + + let len = lines.len(); + if len == 2 { + lines.push(format!("{0:<1$}", "", pos.column + 1)); + } else if lines[len - 1].trim().len() == 0 { + lines[len - 1] = format!("{0:<1$}", "", pos.column + 1) + } else { + // lines[len - 1] = + // format!("{0:<1$}{2}", "", pos.column + 2, lines[len - 1]); + lines.push(format!("{0:<1$}", "", pos.column + 1)); + } + + // println!("{:?}", lines); + // println!("2\n{0:<1$}/*{2}*/\n", "", pos.column, lines.join("\n")); + + let mut indentation: usize = usize::MAX; + for (index, line) in lines.iter().enumerate() { + if index != 0 && index + 1 != lines.len() { + let line = line.trim_end(); + + if line.len() > 0 { + indentation = usize::min( + indentation, + line.len() - line.trim_start().len(), + ); + } + } + } + if indentation == usize::MAX { + indentation = pos.column; + }; + + lines = lines + .iter() .enumerate() .map(|(index, line)| { - if index > 0 { - line.chars() - .skip(if pos.column >= 1 { pos.column - 1 } else { 0 }) - .collect::() + if index == 0 || index + 1 == lines.len() { + line.to_string() + } else { + if pos.column >= indentation { + format!( + "{0:<1$}{2}", + "", + pos.column - indentation + 1, + line, + ) + } else if line.len() >= indentation - pos.column { + line[indentation - pos.column - 1..line.len()] + .to_string() + } else { + line.to_string() + } + } + }) + .collect(); + + // println!("{:?}", lines); + // println!("3\n{0:<1$}/*{2}*/\n", "", pos.column, lines.join("\n")); + // println!("indentation={} pos.column{}", indentation, pos.column); + + lines = lines + .iter() + .enumerate() + .map(|(index, line)| { + if index == 0 { + line.to_string() + } else if line.len() >= pos.column + 1 { + line[pos.column + 1..line.len()].to_string() } else { line.to_string() } }) - .collect::>() - .join("\n"); + .collect(); - format!("/*{}*/", text) + // println!("{:?}", lines); + // println!("4\n{0:<1$}/*{2}*/\n", "", pos.column, lines.join("\n")); + + format!("/*{}*/", lines.join("\n")) } } diff --git a/src/rules/pattern.rs b/src/rules/pattern.rs index 0f6f620..31bf5fe 100644 --- a/src/rules/pattern.rs +++ b/src/rules/pattern.rs @@ -51,21 +51,30 @@ pub fn rule( | rnix::SyntaxKind::TOKEN_CURLY_B_OPEN = prev_kind { steps.push_back(crate::builder::Step::Whitespace); + steps.push_back(crate::builder::Step::Indent); } if let rnix::SyntaxKind::TOKEN_COMMENT | rnix::SyntaxKind::TOKEN_ELLIPSIS | rnix::SyntaxKind::NODE_PAT_ENTRY = prev_kind { + steps.push_back(crate::builder::Step::Indent); steps.push_back(crate::builder::Step::NewLine); steps.push_back(crate::builder::Step::Pad); - steps.push_back(crate::builder::Step::Whitespace); - steps.push_back(crate::builder::Step::Whitespace); } children.drain_comment(|text| { steps.push_back(crate::builder::Step::Comment(text)); }); + + if let rnix::SyntaxKind::TOKEN_COMMA + | rnix::SyntaxKind::TOKEN_CURLY_B_OPEN + | rnix::SyntaxKind::TOKEN_COMMENT + | rnix::SyntaxKind::TOKEN_ELLIPSIS + | rnix::SyntaxKind::NODE_PAT_ENTRY = prev_kind + { + steps.push_back(crate::builder::Step::Dedent); + } } // item rnix::SyntaxKind::TOKEN_ELLIPSIS diff --git a/tests/cases/apply/out b/tests/cases/apply/out index 99c9e16..5eb1b42 100644 --- a/tests/cases/apply/out +++ b/tests/cases/apply/out @@ -2,13 +2,21 @@ ( a b ) ( a - /*b*/ + /* + b + */ c ) ( - /*a*/ + /* + a + */ b - /*c*/ + /* + c + */ d - /*e*/ + /* + e + */ ) diff --git a/tests/cases/assert/out b/tests/cases/assert/out index 212a240..fdac08a 100644 --- a/tests/cases/assert/out +++ b/tests/cases/assert/out @@ -2,20 +2,28 @@ ( assert b; c ) ( assert b; - /*b*/ + /* + b + */ c ) ( assert - /*a*/ + /* + a + */ b; c ) ( assert - /*a*/ + /* + a + */ b; - /*b*/ + /* + b + */ c ) ( diff --git a/tests/cases/attr_set/out b/tests/cases/attr_set/out index 2308376..0070866 100644 --- a/tests/cases/attr_set/out +++ b/tests/cases/attr_set/out @@ -1,13 +1,19 @@ [ { } { - /*a*/ + /* + a + */ } { a = 1; } { - /*a*/ + /* + a + */ b = 1; - /*c*/ + /* + c + */ } { a = { diff --git a/tests/cases/comments/in b/tests/cases/comments/in new file mode 100644 index 0000000..9e3e59f --- /dev/null +++ b/tests/cases/comments/in @@ -0,0 +1,44 @@ +[ +/* +*/ + /* + */ + + /* + */ + + /* + */ + + /* + */ + + /* + */ + + /*@*/ + + /** + @ + **/ + + /*@ + @ + @*/ + + /*@ + @ + @*/ + + /*@ +@ + @*/ + + /*@ + @ + @*/ + + /* test + * test + */ +] diff --git a/tests/cases/comments/out b/tests/cases/comments/out new file mode 100644 index 0000000..b42f492 --- /dev/null +++ b/tests/cases/comments/out @@ -0,0 +1,40 @@ +[ + /**/ + /**/ + /**/ + /**/ + /**/ + /**/ + /* + @ + */ + /* + * + @ + * + */ + /* + @ + @ + @ + */ + /* + @ + @ + @ + */ + /* + @ + @ + @ + */ + /* + @ + @ + @ + */ + /* + test + * test + */ +] diff --git a/tests/cases/dynamic/out b/tests/cases/dynamic/out index 40dba96..06a2923 100644 --- a/tests/cases/dynamic/out +++ b/tests/cases/dynamic/out @@ -1,10 +1,16 @@ a .${ - /*b*/ + /* + b + */ c .${ - /*d*/ + /* + d + */ e.${ f } } - /*g*/ + /* + g + */ } diff --git a/tests/cases/inherit/out b/tests/cases/inherit/out index 6f2b5a1..974a792 100644 --- a/tests/cases/inherit/out +++ b/tests/cases/inherit/out @@ -11,51 +11,75 @@ inherit b d - /*e*/ + /* + e + */ ; } { inherit b - /*c*/ + /* + c + */ d; } { inherit b - /*c*/ + /* + c + */ d - /*e*/ + /* + e + */ ; } { inherit - /*a*/ + /* + a + */ b d; } { inherit - /*a*/ + /* + a + */ b d - /*e*/ + /* + e + */ ; } { inherit - /*a*/ + /* + a + */ b - /*c*/ + /* + c + */ d; } { inherit - /*a*/ + /* + a + */ b - /*c*/ + /* + c + */ d - /*e*/ + /* + e + */ ; } ] diff --git a/tests/cases/inherit_from/out b/tests/cases/inherit_from/out index 2539761..b2a3f10 100644 --- a/tests/cases/inherit_from/out +++ b/tests/cases/inherit_from/out @@ -4,14 +4,18 @@ inherit ( b - /*c*/ + /* + c + */ ) d; } { inherit ( - /*a*/ + /* + a + */ b ) d; @@ -19,9 +23,13 @@ { inherit ( - /*a*/ + /* + a + */ b - /*c*/ + /* + c + */ ) d; } diff --git a/tests/cases/key_value/out b/tests/cases/key_value/out index 5799ad5..62004b2 100644 --- a/tests/cases/key_value/out +++ b/tests/cases/key_value/out @@ -3,49 +3,73 @@ b = { a = 1 - /*d*/ + /* + d + */ ; }; c = { a = - /*c*/ + /* + c + */ 1; }; d = { a = - /*c*/ + /* + c + */ 1 - /*d*/ + /* + d + */ ; }; e = { a - /*b*/ + /* + b + */ = 1; }; f = { a - /*b*/ + /* + b + */ = 1 - /*d*/ + /* + d + */ ; }; h = { a - /*b*/ + /* + b + */ = - /*c*/ + /* + c + */ 1; }; i = { a - /*b*/ + /* + b + */ = - /*c*/ + /* + c + */ 1 - /*d*/ + /* + d + */ ; }; } diff --git a/tests/cases/lambda/out b/tests/cases/lambda/out index f0cf195..c4f28f2 100644 --- a/tests/cases/lambda/out +++ b/tests/cases/lambda/out @@ -2,20 +2,28 @@ ( a: d ) ( a: - /*c*/ + /* + c + */ d ) ( a - /*b*/ + /* + b + */ : d ) ( a - /*b*/ + /* + b + */ : - /*c*/ + /* + c + */ d ) ( diff --git a/tests/cases/let_in/out b/tests/cases/let_in/out index fb04aff..b287232 100644 --- a/tests/cases/let_in/out +++ b/tests/cases/let_in/out @@ -6,54 +6,78 @@ let let c = 1; in - /*e*/ + /* + e + */ f; /**/ a = let c = 1; - /*d*/ + /* + d + */ in f; /**/ a = let c = 1; - /*d*/ + /* + d + */ in - /*e*/ + /* + e + */ f; /**/ a = let - /*b*/ + /* + b + */ c = 1; in f; /**/ a = let - /*b*/ + /* + b + */ c = 1; in - /*e*/ + /* + e + */ f; /**/ a = let - /*b*/ + /* + b + */ c = 1; - /*d*/ + /* + d + */ in f; /**/ a = let - /*b*/ + /* + b + */ c = 1; - /*d*/ + /* + d + */ in - /*e*/ + /* + e + */ f; /**/ in diff --git a/tests/cases/paren/out b/tests/cases/paren/out index 99fe7bc..c4bafd9 100644 --- a/tests/cases/paren/out +++ b/tests/cases/paren/out @@ -1,8 +1,14 @@ ( - /*a*/ + /* + a + */ ( - /*b*/ + /* + b + */ ( c ) ) - /*d*/ + /* + d + */ ) diff --git a/tests/cases/pattern/out b/tests/cases/pattern/out index ad95b97..3849e33 100644 --- a/tests/cases/pattern/out +++ b/tests/cases/pattern/out @@ -30,14 +30,18 @@ { b , e , ... - /*h*/ + /* + h + */ }: _ ) ( { b , e - , /*g*/ + , /* + g + */ ... }: _ @@ -45,16 +49,22 @@ ( { b , e - , /*g*/ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( { b , e - /*f*/ + /* + f + */ , ... }: _ @@ -62,17 +72,25 @@ ( { b , e - /*f*/ + /* + f + */ , ... - /*h*/ + /* + h + */ }: _ ) ( { b , e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... }: _ @@ -80,16 +98,24 @@ ( { b , e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( { b - , /*d*/ + , /* + d + */ e , ... }: @@ -97,75 +123,115 @@ ) ( { b - , /*d*/ + , /* + d + */ e , ... - /*h*/ + /* + h + */ }: _ ) ( { b - , /*d*/ + , /* + d + */ e - , /*g*/ + , /* + g + */ ... }: _ ) ( { b - , /*d*/ + , /* + d + */ e - , /*g*/ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( { b - , /*d*/ + , /* + d + */ e - /*f*/ + /* + f + */ , ... }: _ ) ( { b - , /*d*/ + , /* + d + */ e - /*f*/ + /* + f + */ , ... - /*h*/ + /* + h + */ }: _ ) ( { b - , /*d*/ + , /* + d + */ e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... }: _ ) ( { b - , /*d*/ + , /* + d + */ e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( { b - /*c*/ + /* + c + */ , e , ... }: @@ -173,76 +239,118 @@ ) ( { b - /*c*/ + /* + c + */ , e , ... - /*h*/ + /* + h + */ }: _ ) ( { b - /*c*/ + /* + c + */ , e - , /*g*/ + , /* + g + */ ... }: _ ) ( { b - /*c*/ + /* + c + */ , e - , /*g*/ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( { b - /*c*/ + /* + c + */ , e - /*f*/ + /* + f + */ , ... }: _ ) ( { b - /*c*/ + /* + c + */ , e - /*f*/ + /* + f + */ , ... - /*h*/ + /* + h + */ }: _ ) ( { b - /*c*/ + /* + c + */ , e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... }: _ ) ( { b - /*c*/ + /* + c + */ , e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( { b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e , ... }: @@ -250,81 +358,135 @@ ) ( { b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e , ... - /*h*/ + /* + h + */ }: _ ) ( { b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - , /*g*/ + , /* + g + */ ... }: _ ) ( { b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - , /*g*/ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( { b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - /*f*/ + /* + f + */ , ... }: _ ) ( { b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - /*f*/ + /* + f + */ , ... - /*h*/ + /* + h + */ }: _ ) ( { b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... }: _ ) ( { b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b , e , ... @@ -332,352 +494,594 @@ _ ) ( - { /*a*/ + { /* + a + */ b , e , ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b , e - , /*g*/ + , /* + g + */ ... }: _ ) ( - { /*a*/ + { /* + a + */ b , e - , /*g*/ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b , e - /*f*/ + /* + f + */ , ... }: _ ) ( - { /*a*/ + { /* + a + */ b , e - /*f*/ + /* + f + */ , ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b , e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... }: _ ) ( - { /*a*/ + { /* + a + */ b , e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - , /*d*/ + , /* + d + */ e , ... }: _ ) ( - { /*a*/ + { /* + a + */ b - , /*d*/ + , /* + d + */ e , ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - , /*d*/ + , /* + d + */ e - , /*g*/ + , /* + g + */ ... }: _ ) ( - { /*a*/ + { /* + a + */ b - , /*d*/ + , /* + d + */ e - , /*g*/ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - , /*d*/ + , /* + d + */ e - /*f*/ + /* + f + */ , ... }: _ ) ( - { /*a*/ + { /* + a + */ b - , /*d*/ + , /* + d + */ e - /*f*/ + /* + f + */ , ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - , /*d*/ + , /* + d + */ e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... }: _ ) ( - { /*a*/ + { /* + a + */ b - , /*d*/ + , /* + d + */ e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ + /* + c + */ , e , ... }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ + /* + c + */ , e , ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ + /* + c + */ , e - , /*g*/ + , /* + g + */ ... }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ + /* + c + */ , e - , /*g*/ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ + /* + c + */ , e - /*f*/ + /* + f + */ , ... }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ + /* + c + */ , e - /*f*/ + /* + f + */ , ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ + /* + c + */ , e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ + /* + c + */ , e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e , ... }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e , ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - , /*g*/ + , /* + g + */ ... }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - , /*g*/ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - /*f*/ + /* + f + */ , ... }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - /*f*/ + /* + f + */ , ... - /*h*/ + /* + h + */ }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... }: _ ) ( - { /*a*/ + { /* + a + */ b - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) ( { a ? null }: _ ) ( - { /*a*/ + { /* + a + */ b - /*a*/ + /* + a + */ ? - /*a*/ + /* + a + */ null - /*c*/ - , /*d*/ + /* + c + */ + , /* + d + */ e - /*a*/ + /* + a + */ ? - /*a*/ + /* + a + */ null - /*f*/ - , /*g*/ + /* + f + */ + , /* + g + */ ... - /*h*/ + /* + h + */ }: _ ) diff --git a/tests/cases/root/in b/tests/cases/root/in index 73a0c5a..cb91387 100644 --- a/tests/cases/root/in +++ b/tests/cases/root/in @@ -1,14 +1,10 @@ -# a - /* test - * test - */ +/* Some functions f + name attribute. + */ + /* Add to or over + derivation. -# a - -"test" - -# b -/* c */ - -/* c */ -# c + Example: + addMetaAttrs {des + */ +1 diff --git a/tests/cases/root/out b/tests/cases/root/out index 1a79940..7bb735c 100644 --- a/tests/cases/root/out +++ b/tests/cases/root/out @@ -1,10 +1,12 @@ -# a -/* test - * test +/* + Some functions f + name attribute. */ -# a -"test" -# b -/* c */ -/* c */ -# c +/* + Add to or over + derivation. + + Example: + addMetaAttrs {des + */ +1 diff --git a/tests/cases/string_interpol/out b/tests/cases/string_interpol/out index ed198c0..3faa390 100644 --- a/tests/cases/string_interpol/out +++ b/tests/cases/string_interpol/out @@ -1,8 +1,14 @@ "${ - /*a*/ + /* + a + */ "${ - /*b*/ + /* + b + */ "${ c }" }" - /*d*/ + /* + d + */ }" diff --git a/tests/cases/with/out b/tests/cases/with/out index e9edeeb..106309e 100644 --- a/tests/cases/with/out +++ b/tests/cases/with/out @@ -2,20 +2,28 @@ ( with b; c ) ( with b; - /*b*/ + /* + b + */ c ) ( with - /*a*/ + /* + a + */ b; c ) ( with - /*a*/ + /* + a + */ b; - /*b*/ + /* + b + */ c ) (