Skip to content

Commit 5db9c68

Browse files
committed
Don't take ownership of Api unnecessarily
1 parent be4c8a7 commit 5db9c68

2 files changed

Lines changed: 9 additions & 9 deletions

File tree

src/cli_v1.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ pub fn run_cli_v1_main() -> anyhow::Result<()> {
144144
} => {
145145
let generated_paths = match &output_dir {
146146
Some(path) => {
147-
let generated_paths = generate(api, template.into(), path, no_postprocess)?;
147+
let generated_paths = generate(&api, template.into(), path, no_postprocess)?;
148148
println!("done! output written to {path}");
149149
generated_paths
150150
}
@@ -170,7 +170,7 @@ pub fn run_cli_v1_main() -> anyhow::Result<()> {
170170
.try_into()
171171
.context("non-UTF8 tempdir path")?;
172172

173-
let generated_paths = generate(api, template.into(), path, no_postprocess)?;
173+
let generated_paths = generate(&api, template.into(), path, no_postprocess)?;
174174
println!("done! output written to {path}");
175175

176176
// Persist the TempDir if everything was successful

src/generator.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ enum TemplateKind {
2424
}
2525

2626
pub(crate) fn generate(
27-
api: Api,
27+
api: &Api,
2828
tpl_name: String,
2929
output_dir: &Utf8Path,
3030
no_postprocess: bool,
@@ -91,7 +91,7 @@ struct Generator<'a> {
9191
}
9292

9393
impl Generator<'_> {
94-
fn generate_api_resources_options(self, api: Api) -> anyhow::Result<Vec<Utf8PathBuf>> {
94+
fn generate_api_resources_options(self, api: &Api) -> anyhow::Result<Vec<Utf8PathBuf>> {
9595
self.generate_api_resources_options_inner(api.resources.values())
9696
}
9797

@@ -119,7 +119,7 @@ impl Generator<'_> {
119119
Ok(generated_paths)
120120
}
121121

122-
fn generate_api_resources(self, api: Api) -> anyhow::Result<Vec<Utf8PathBuf>> {
122+
fn generate_api_resources(self, api: &Api) -> anyhow::Result<Vec<Utf8PathBuf>> {
123123
self.generate_api_resources_inner(api.resources.values())
124124
}
125125

@@ -143,22 +143,22 @@ impl Generator<'_> {
143143
Ok(generated_paths)
144144
}
145145

146-
fn generate_types(self, api: Api, output_dir: &Utf8Path) -> anyhow::Result<Vec<Utf8PathBuf>> {
146+
fn generate_types(self, api: &Api, output_dir: &Utf8Path) -> anyhow::Result<Vec<Utf8PathBuf>> {
147147
let mut generated_paths = vec![];
148148

149149
let output_dir = output_dir.as_str();
150-
for (name, ty) in api.types {
150+
for (name, ty) in &api.types {
151151
let referenced_components = ty.referenced_components();
152152
generated_paths.extend_from_slice(&self.render_tpl(
153-
Some(&name),
153+
Some(name),
154154
context! { type => ty, referenced_components, output_dir },
155155
)?);
156156
}
157157

158158
Ok(generated_paths)
159159
}
160160

161-
fn generate_summary(&self, api: Api) -> anyhow::Result<Vec<Utf8PathBuf>> {
161+
fn generate_summary(&self, api: &Api) -> anyhow::Result<Vec<Utf8PathBuf>> {
162162
self.render_tpl(None, context! { api })
163163
}
164164

0 commit comments

Comments
 (0)