Skip to content

Commit

Permalink
fix: comments were rendered incorrectly after the type split
Browse files Browse the repository at this point in the history
When splitting up the `Comment` type to allow tracking the span of
individual lines, the printing in both the schema formatter and code
generators broke.

In addition, several test snapshots were not updated during that change
either.
  • Loading branch information
dnaka91 committed Dec 14, 2023
1 parent 57b59ee commit 9116c87
Show file tree
Hide file tree
Showing 19 changed files with 276 additions and 78 deletions.
2 changes: 1 addition & 1 deletion crates/stef-build/src/definition.rs
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ fn compile_import(Import { segments, element }: &Import<'_>) -> TokenStream {
}

fn compile_comment(Comment(lines): &Comment<'_>) -> TokenStream {
let lines = lines.iter().map(|line| format!(" {line}"));
let lines = lines.iter().map(|line| format!(" {}", line.value));
quote! { #(#[doc = #lines])* }
}

Expand Down
2 changes: 1 addition & 1 deletion crates/stef-go/src/definition.rs
Original file line number Diff line number Diff line change
Expand Up @@ -426,7 +426,7 @@ struct RenderComment<'a> {
impl Display for RenderComment<'_> {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
for line in &self.comment.0 {
writeln!(f, "{:\t<width$}// {line}", "", width = self.indent)?;
writeln!(f, "{:\t<width$}// {}", "", line.value, width = self.indent)?;
}

Ok(())
Expand Down
2 changes: 1 addition & 1 deletion crates/stef-parser/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -613,7 +613,7 @@ impl Print for Comment<'_> {

for line in lines {
Self::indent(f, level)?;
line.fmt(f)?;
writeln!(f, "{line}")?;
}

Ok(())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,13 @@ Schema {
TypeAlias {
comment: Comment(
[
"Sample type alias.",
CommentLine {
value: "Sample type alias.",
span: Span {
start: 0,
end: 22,
},
},
],
),
name: Name {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,17 +23,29 @@ Schema {
Attribute {
name: "min",
value: Single(
Int(
1,
),
Literal {
value: Int(
1,
),
span: Span {
start: 17,
end: 18,
},
},
),
},
Attribute {
name: "max",
value: Single(
Int(
100,
),
Literal {
value: Int(
100,
),
span: Span {
start: 26,
end: 29,
},
},
),
},
],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,15 @@ Schema {
Attribute {
name: "deprecated",
value: Single(
String(
"don't use",
),
Literal {
value: String(
"don't use",
),
span: Span {
start: 15,
end: 26,
},
},
),
},
],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,15 @@ Schema {
Attribute {
name: "deprecated",
value: Single(
String(
"don't use",
),
Literal {
value: String(
"don't use",
),
span: Span {
start: 15,
end: 26,
},
},
),
},
Attribute {
Expand All @@ -39,17 +45,29 @@ Schema {
Attribute {
name: "min",
value: Single(
Int(
100,
),
Literal {
value: Int(
100,
),
span: Span {
start: 69,
end: 72,
},
},
),
},
Attribute {
name: "max",
value: Single(
Int(
200,
),
Literal {
value: Int(
200,
),
span: Span {
start: 80,
end: 83,
},
},
),
},
],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,15 @@ Schema {
Attribute {
name: "deprecated",
value: Single(
String(
"don't use",
),
Literal {
value: String(
"don't use",
),
span: Span {
start: 13,
end: 24,
},
},
),
},
Attribute {
Expand All @@ -39,17 +45,29 @@ Schema {
Attribute {
name: "min",
value: Single(
Int(
100,
),
Literal {
value: Int(
100,
),
span: Span {
start: 59,
end: 62,
},
},
),
},
Attribute {
name: "max",
value: Single(
Int(
200,
),
Literal {
value: Int(
200,
),
span: Span {
start: 67,
end: 70,
},
},
),
},
],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,15 @@ Schema {
end: 21,
},
},
value: Bool(
true,
),
value: Literal {
value: Bool(
true,
),
span: Span {
start: 24,
end: 28,
},
},
},
),
Const(
Expand All @@ -52,9 +58,15 @@ Schema {
end: 52,
},
},
value: Bool(
false,
),
value: Literal {
value: Bool(
false,
),
span: Span {
start: 55,
end: 60,
},
},
},
),
Const(
Expand All @@ -76,9 +88,15 @@ Schema {
end: 76,
},
},
value: Int(
100,
),
value: Literal {
value: Int(
100,
),
span: Span {
start: 79,
end: 82,
},
},
},
),
Const(
Expand All @@ -100,9 +118,15 @@ Schema {
end: 100,
},
},
value: Float(
5.5,
),
value: Literal {
value: Float(
5.5,
),
span: Span {
start: 103,
end: 106,
},
},
},
),
Const(
Expand All @@ -124,9 +148,15 @@ Schema {
end: 128,
},
},
value: String(
"value",
),
value: Literal {
value: String(
"value",
),
span: Span {
start: 131,
end: 138,
},
},
},
),
Const(
Expand All @@ -148,13 +178,19 @@ Schema {
end: 158,
},
},
value: Bytes(
[
1,
2,
3,
],
),
value: Literal {
value: Bytes(
[
1,
2,
3,
],
),
span: Span {
start: 161,
end: 170,
},
},
},
),
],
Expand Down
Loading

0 comments on commit 9116c87

Please sign in to comment.