Fix little of needless_pass_by_value · RustPython/RustPython@f33bfcc · GitHub
Skip to content

Commit f33bfcc

Browse files
committed
Fix little of needless_pass_by_value
1 parent 63dba81 commit f33bfcc

6 files changed

Lines changed: 59 additions & 58 deletions

File tree

crates/codegen/src/compile.rs

Lines changed: 22 additions & 21 deletions

crates/derive-impl/src/compile_bytecode.rs

Lines changed: 22 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ pub trait Compiler {
5252
&self,
5353
source: &str,
5454
mode: Mode,
55-
module_name: String,
55+
module_name: &str,
5656
) -> Result<CodeObject, Box<dyn core::error::Error>>;
5757
}
5858

@@ -61,7 +61,7 @@ impl CompilationSource {
6161
&self,
6262
source: &str,
6363
mode: Mode,
64-
module_name: String,
64+
module_name: &str,
6565
compiler: &dyn Compiler,
6666
origin: F,
6767
) -> Result<CodeObject, Diagnostic> {
@@ -76,15 +76,15 @@ impl CompilationSource {
7676
fn compile(
7777
&self,
7878
mode: Mode,
79-
module_name: String,
79+
module_name: &str,
8080
compiler: &dyn Compiler,
8181
) -> Result<HashMap<String, CompiledModule>, Diagnostic> {
8282
match &self.kind {
8383
CompilationSourceKind::Dir { base, rel_path } => {
84-
self.compile_dir(base, &base.join(rel_path), String::new(), mode, compiler)
84+
self.compile_dir(base, &base.join(rel_path), "", mode, compiler)
8585
}
8686
_ => Ok(hashmap! {
87-
module_name.clone() => CompiledModule {
87+
module_name.to_string() => CompiledModule {
8888
code: self.compile_single(mode, module_name, compiler)?,
8989
package: false,
9090
},
@@ -95,7 +95,7 @@ impl CompilationSource {
9595
fn compile_single(
9696
&self,
9797
mode: Mode,
98-
module_name: String,
98+
module_name: &str,
9999
compiler: &dyn Compiler,
100100
) -> Result<CodeObject, Diagnostic> {
101101
match &self.kind {
@@ -126,7 +126,7 @@ impl CompilationSource {
126126
&self,
127127
base: &Path,
128128
path: &Path,
129-
parent: String,
129+
parent: &str,
130130
mode: Mode,
131131
compiler: &dyn Compiler,
132132
) -> Result<HashMap<String, CompiledModule>, Diagnostic> {
@@ -152,26 +152,21 @@ impl CompilationSource {
152152
Diagnostic::spans_error(self.span, format!("Invalid UTF-8 in file name {path:?}"))
153153
})?;
154154
if path.is_dir() {
155-
code_map.extend(self.compile_dir(
156-
base,
157-
&path,
158-
if parent.is_empty() {
159-
file_name.to_string()
160-
} else {
161-
format!("{parent}.{file_name}")
162-
},
163-
mode,
164-
compiler,
165-
)?);
155+
let nparent = if parent.is_empty() {
156+
file_name.to_string()
157+
} else {
158+
format!("{parent}.{file_name}")
159+
};
160+
code_map.extend(self.compile_dir(base, &path, &nparent, mode, compiler)?);
166161
} else if file_name.ends_with(".py") {
167162
let stem = path.file_stem().unwrap().to_str().unwrap();
168163
let is_init = stem == "__init__";
169164
let module_name = if is_init {
170-
parent.clone()
165+
parent
171166
} else if parent.is_empty() {
172-
stem.to_owned()
167+
stem
173168
} else {
174-
format!("{parent}.{stem}")
169+
&format!("{parent}.{stem}")
175170
};
176171

177172
let compile_path = |src_path: &Path| {
@@ -181,7 +176,7 @@ impl CompilationSource {
181176
format!("Error reading file {path:?}: {err}"),
182177
)
183178
})?;
184-
self.compile_string(&source, mode, module_name.clone(), compiler, || {
179+
self.compile_string(&source, mode, module_name, compiler, || {
185180
path.strip_prefix(base).ok().unwrap_or(&path).display()
186181
})
187182
};
@@ -211,7 +206,7 @@ impl CompilationSource {
211206
};
212207

213208
code_map.insert(
214-
module_name,
209+
module_name.to_string(),
215210
CompiledModule {
216211
code,
217212
package: is_init,
@@ -343,7 +338,7 @@ pub(crate) fn impl_py_compile(
343338
let crate_name = args.crate_name;
344339
let code = args
345340
.source
346-
.compile_single(args.mode, args.module_name, compiler)?;
341+
.compile_single(args.mode, &args.module_name, compiler)?;
347342

348343
let frozen = frozen::FrozenCodeObject::encode(&code);
349344
let bytes = LitByteStr::new(&frozen.bytes, Span::call_site());
@@ -362,7 +357,9 @@ pub(crate) fn impl_py_freeze(
362357
let args = PyCompileArgs::parse(input, true)?;
363358

364359
let crate_name = args.crate_name;
365-
let code_map = args.source.compile(args.mode, args.module_name, compiler)?;
360+
let code_map = args
361+
.source
362+
.compile(args.mode, &args.module_name, compiler)?;
366363

367364
let data = frozen::FrozenLib::encode(code_map.iter().map(|(k, v)| {
368365
let v = frozen::FrozenModule {

crates/derive-impl/src/lib.rs

Lines changed: 1 addition & 1 deletion

0 commit comments

Comments
 (0)