Skip to content

Commit 6b907d1

Browse files
committed
Cleanup BytecodeDependencyKind::New
1 parent a7bc520 commit 6b907d1

File tree

1 file changed

+31
-10
lines changed
  • crates/compilers/src/preprocessor

1 file changed

+31
-10
lines changed

Diff for: crates/compilers/src/preprocessor/deps.rs

+31-10
Original file line numberDiff line numberDiff line change
@@ -93,9 +93,19 @@ impl PreprocessorDependencies {
9393
enum BytecodeDependencyKind {
9494
/// `type(Contract).creationCode`
9595
CreationCode,
96-
/// `new Contract`. Holds the name of the contract, args length and call args offset,
97-
/// `msg.value` (if any) and salt (if any).
98-
New(String, usize, usize, Option<String>, Option<String>),
96+
/// `new Contract`.
97+
New {
98+
/// Contract name.
99+
name: String,
100+
/// Constructor args length.
101+
args_length: usize,
102+
/// Constructor call args offset.
103+
call_args_offset: usize,
104+
/// `msg.value` (if any) used when creating contract.
105+
value: Option<String>,
106+
/// `salt` (if any) used when creating contract.
107+
salt: Option<String>,
108+
},
99109
}
100110

101111
/// Represents a single bytecode dependency.
@@ -191,13 +201,18 @@ impl<'hir> Visit<'hir> for BytecodeDependencyCollector<'hir> {
191201

192202
let args_len = expr.span.hi() - ty_new.span.hi();
193203
self.collect_dependency(BytecodeDependency {
194-
kind: BytecodeDependencyKind::New(
195-
name.to_string(),
196-
args_len.to_usize(),
204+
kind: BytecodeDependencyKind::New {
205+
name: name.to_string(),
206+
args_length: args_len.to_usize(),
197207
call_args_offset,
198-
named_arg(self.src, named_args, "value", self.source_map),
199-
named_arg(self.src, named_args, "salt", self.source_map),
200-
),
208+
value: named_arg(
209+
self.src,
210+
named_args,
211+
"value",
212+
self.source_map,
213+
),
214+
salt: named_arg(self.src, named_args, "salt", self.source_map),
215+
},
201216
loc: span_to_range(self.source_map, ty.span),
202217
referenced_contract: contract_id,
203218
});
@@ -279,7 +294,13 @@ pub(crate) fn remove_bytecode_dependencies(
279294
format!("{vm}.getCode(\"{artifact}\")"),
280295
));
281296
}
282-
BytecodeDependencyKind::New(name, args_length, call_args_offset, value, salt) => {
297+
BytecodeDependencyKind::New {
298+
name,
299+
args_length,
300+
call_args_offset,
301+
value,
302+
salt,
303+
} => {
283304
let mut update = format!("{name}(payable({vm}.deployCode({{");
284305
update.push_str(&format!("_artifact: \"{artifact}\""));
285306

0 commit comments

Comments
 (0)