Skip to content

Commit 814f028

Browse files
committed
feat(sidekick/rust): Improve generated samples format.
This approach balances vertical vs. horizontal sample size. And we we don't need the newline-in-comment trick to keep the templates readable.
1 parent d54fc6a commit 814f028

File tree

3 files changed

+51
-66
lines changed

3 files changed

+51
-66
lines changed

internal/sidekick/rust/templates/common/client_method_samples/builder_fields.mustache

Lines changed: 30 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -12,34 +12,33 @@ distributed under the License is distributed on an "AS IS" BASIS,
1212
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1313
See the License for the specific language governing permissions and
1414
limitations under the License.
15-
}}{{!
16-
Terminate each line in a comment so
17-
(a) we can read this code as each case is in a separate line,and
18-
(b) the newline is suppressed in the output to get tighter code.
19-
Use no newline at the end of file so the partials are all merged into a single line.
20-
}}{{#AIPStandardGetInfo}}{{!
21-
}}.set_{{ResourceNameRequestField.Codec.SetterName}}(resource_name){{!
22-
}}{{/AIPStandardGetInfo}}{{!
23-
}}{{#AIPStandardDeleteInfo}}{{!
24-
}}.set_{{ResourceNameRequestField.Codec.SetterName}}(resource_name){{!
25-
}}{{/AIPStandardDeleteInfo}}{{!
26-
}}{{#AIPStandardUndeleteInfo}}{{!
27-
}}.set_{{ResourceNameRequestField.Codec.SetterName}}(resource_name){{!
28-
}}{{/AIPStandardUndeleteInfo}}{{!
29-
}}{{#AIPStandardCreateInfo}}{{!
30-
}}.set_{{ParentRequestField.Codec.SetterName}}(parent){{!
31-
}}{{#ResourceIDRequestField}}{{!
32-
}}.set_{{Codec.SetterName}}(id){{!
33-
}}{{/ResourceIDRequestField}}{{!
34-
}}.set_{{ResourceRequestField.Codec.SetterName}}({{ResourceRequestField.MessageType.Codec.Name}}::new()/* set fields */){{!
35-
}}{{/AIPStandardCreateInfo}}{{!
36-
}}{{#AIPStandardUpdateInfo}}{{!
37-
}}.set_{{ResourceRequestField.Codec.SetterName}}({{ResourceRequestField.MessageType.Codec.Name}}::new().set_name(name)/* set fields */){{!
38-
}}{{#UpdateMaskRequestField}}{{!
39-
}}.set_{{Codec.SetterName}}(FieldMask::default().set_paths(["updated", "fields"])){{!
40-
}}{{/UpdateMaskRequestField}}{{!
41-
}}{{/AIPStandardUpdateInfo}}{{!
42-
}}{{#AIPStandardListInfo}}{{!
43-
}}.set_{{ParentRequestField.Codec.SetterName}}(parent){{!
44-
}}{{/AIPStandardListInfo}}{{!
45-
}}{{^IsAIPStandard}}/* set fields */{{/IsAIPStandard}}
15+
}}
16+
{{#AIPStandardGetInfo}}
17+
/// .set_{{ResourceNameRequestField.Codec.SetterName}}(resource_name)
18+
{{/AIPStandardGetInfo}}
19+
{{#AIPStandardDeleteInfo}}
20+
/// .set_{{ResourceNameRequestField.Codec.SetterName}}(resource_name)
21+
{{/AIPStandardDeleteInfo}}
22+
{{#AIPStandardUndeleteInfo}}
23+
/// .set_{{ResourceNameRequestField.Codec.SetterName}}(resource_name)
24+
{{/AIPStandardUndeleteInfo}}
25+
{{#AIPStandardCreateInfo}}
26+
/// .set_{{ParentRequestField.Codec.SetterName}}(parent){{#ResourceIDRequestField}}.set_{{Codec.SetterName}}("{{Codec.SetterName}}_value"){{/ResourceIDRequestField}}
27+
/// .set_{{ResourceRequestField.Codec.SetterName}}(
28+
/// {{ResourceRequestField.MessageType.Codec.Name}}::new()/* set fields */
29+
/// )
30+
{{/AIPStandardCreateInfo}}
31+
{{#AIPStandardUpdateInfo}}
32+
/// .set_{{ResourceRequestField.Codec.SetterName}}(
33+
/// {{ResourceRequestField.MessageType.Codec.Name}}::new().set_name(name)/* set fields */
34+
/// )
35+
{{#UpdateMaskRequestField}}
36+
/// .set_{{Codec.SetterName}}(FieldMask::default().set_paths(["updated.field.path1", "updated.field.path2"]))
37+
{{/UpdateMaskRequestField}}
38+
{{/AIPStandardUpdateInfo}}
39+
{{#AIPStandardListInfo}}
40+
/// .set_{{ParentRequestField.Codec.SetterName}}(parent){{!
41+
}}{{/AIPStandardListInfo}}
42+
{{^IsAIPStandard}}
43+
/// /* set fields */
44+
{{/IsAIPStandard}}

internal/sidekick/rust/templates/common/client_method_samples/method_call.mustache

Lines changed: 15 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -13,41 +13,36 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1313
See the License for the specific language governing permissions and
1414
limitations under the License.
1515
}}
16-
{{!
17-
Terminate some lines in a comment so
18-
(a) we can read this code as each case is in a separate line,and
19-
(b) the newline is suppressed in the output to get tighter code.
20-
}}
2116
{{#IsSimple}}
2217
{{#ReturnsEmpty}}
23-
/// client.{{Codec.Name}}(){{!
24-
}}{{> /templates/common/client_method_samples/builder_fields}}{{!
25-
}}.send().await?;
18+
/// client.{{Codec.Name}}()
19+
{{> /templates/common/client_method_samples/builder_fields}}
20+
/// .send().await?;
2621
{{/ReturnsEmpty}}
2722
{{^ReturnsEmpty}}
28-
/// let response = client.{{Codec.Name}}(){{!
29-
}}{{> /templates/common/client_method_samples/builder_fields}}{{!
30-
}}.send().await?;
23+
/// let response = client.{{Codec.Name}}()
24+
{{> /templates/common/client_method_samples/builder_fields}}
25+
/// .send().await?;
3126
/// println!("response {:?}", response);
3227
{{/ReturnsEmpty}}
3328
{{/IsSimple}}
3429
{{#IsLRO}}
3530
{{#LongRunningReturnsEmpty}}
36-
/// client.{{Codec.Name}}(){{!
37-
}}{{> /templates/common/client_method_samples/builder_fields}}{{!
38-
}}.poller().until_done().await?;
31+
/// client.{{Codec.Name}}()
32+
{{> /templates/common/client_method_samples/builder_fields}}
33+
/// .poller().until_done().await?;
3934
{{/LongRunningReturnsEmpty}}
4035
{{^LongRunningReturnsEmpty}}
41-
/// let response = client.{{Codec.Name}}(){{!
42-
}}{{> /templates/common/client_method_samples/builder_fields}}{{!
43-
}}.poller().until_done().await?;
36+
/// let response = client.{{Codec.Name}}()
37+
{{> /templates/common/client_method_samples/builder_fields}}
38+
/// .poller().until_done().await?;
4439
/// println!("response {:?}", response);
4540
{{/LongRunningReturnsEmpty}}
4641
{{/IsLRO}}
4742
{{#IsList}}
48-
/// let mut list = client.{{Codec.Name}}(){{!
49-
}}{{> /templates/common/client_method_samples/builder_fields}}{{!
50-
}}.by_item();
43+
/// let mut list = client.{{Codec.Name}}()
44+
{{> /templates/common/client_method_samples/builder_fields}}
45+
/// .by_item();
5146
/// while let Some(item) = list.next().await.transpose()? {
5247
/// println!("{:?}", item);
5348
/// }

internal/sidekick/rust/templates/common/client_method_samples/parameters.mustache

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,31 +14,22 @@ See the License for the specific language governing permissions and
1414
limitations under the License.
1515
}}
1616
{{#AIPStandardGetInfo}}
17-
/// client: &{{Service.Codec.Name}},
18-
/// resource_name: &str
17+
/// client: &{{Service.Codec.Name}}, resource_name: &str
1918
{{/AIPStandardGetInfo}}
2019
{{#AIPStandardDeleteInfo}}
21-
/// client: &{{Service.Codec.Name}},
22-
/// resource_name: &str
20+
/// client: &{{Service.Codec.Name}}, resource_name: &str
2321
{{/AIPStandardDeleteInfo}}
2422
{{#AIPStandardUndeleteInfo}}
25-
/// client: &{{Service.Codec.Name}},
26-
/// resource_name: &str
23+
/// client: &{{Service.Codec.Name}}, resource_name: &str
2724
{{/AIPStandardUndeleteInfo}}
2825
{{#AIPStandardCreateInfo}}
29-
/// client: &{{Service.Codec.Name}},
30-
/// parent: &str,
31-
{{#ResourceIDRequestField}}
32-
/// id: &str
33-
{{/ResourceIDRequestField}}
26+
/// client: &{{Service.Codec.Name}}, parent: &str
3427
{{/AIPStandardCreateInfo}}
3528
{{#AIPStandardUpdateInfo}}
36-
/// client: &{{Service.Codec.Name}},
37-
/// name: &str
29+
/// client: &{{Service.Codec.Name}}, name: &str
3830
{{/AIPStandardUpdateInfo}}
3931
{{#AIPStandardListInfo}}
40-
/// client: &{{Service.Codec.Name}},
41-
/// parent: &str
32+
/// client: &{{Service.Codec.Name}}, parent: &str
4233
{{/AIPStandardListInfo}}
4334
{{^IsAIPStandard}}
4435
/// client: &{{Service.Codec.Name}}

0 commit comments

Comments
 (0)