Skip to content

Commit 14e50ed

Browse files
extended JsonResult structure (#8565)
* extended JsonResult structure * removed breakpoints in JsonResult * chore: nits --------- Co-authored-by: DaniPopes <[email protected]>
1 parent 1f33c6f commit 14e50ed

File tree

2 files changed

+16
-14
lines changed

2 files changed

+16
-14
lines changed

crates/script/src/execute.rs

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1+
use super::{runner::ScriptRunner, JsonResult, NestedValue, ScriptResult};
12
use crate::{
23
build::{CompiledState, LinkedBuildData},
34
simulate::PreSimulationState,
45
ScriptArgs, ScriptConfig,
56
};
6-
7-
use super::{runner::ScriptRunner, JsonResult, NestedValue, ScriptResult};
87
use alloy_dyn_abi::FunctionExt;
98
use alloy_json_abi::{Function, InternalType, JsonAbi};
109
use alloy_primitives::{Address, Bytes};
@@ -382,14 +381,13 @@ impl PreSimulationState {
382381
pub fn show_json(&self) -> Result<()> {
383382
let result = &self.execution_result;
384383

385-
let console_logs = decode_console_logs(&result.logs);
386-
let output = JsonResult {
387-
logs: console_logs,
388-
gas_used: result.gas_used,
389-
returns: self.execution_artifacts.returns.clone(),
384+
let json_result = JsonResult {
385+
logs: decode_console_logs(&result.logs),
386+
returns: &self.execution_artifacts.returns,
387+
result,
390388
};
391-
let j = serde_json::to_string(&output)?;
392-
shell::println(j)?;
389+
let json = serde_json::to_string(&json_result)?;
390+
shell::println(json)?;
393391

394392
if !self.execution_result.success {
395393
return Err(eyre::eyre!(

crates/script/src/lib.rs

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -457,16 +457,19 @@ impl Provider for ScriptArgs {
457457
}
458458
}
459459

460-
#[derive(Default)]
460+
#[derive(Default, Serialize)]
461461
pub struct ScriptResult {
462462
pub success: bool,
463+
#[serde(rename = "raw_logs")]
463464
pub logs: Vec<Log>,
464465
pub traces: Traces,
465466
pub gas_used: u64,
466467
pub labeled_addresses: HashMap<Address, String>,
468+
#[serde(skip)]
467469
pub transactions: Option<BroadcastableTransactions>,
468470
pub returned: Bytes,
469471
pub address: Option<Address>,
472+
#[serde(skip)]
470473
pub breakpoints: Breakpoints,
471474
}
472475

@@ -490,11 +493,12 @@ impl ScriptResult {
490493
}
491494
}
492495

493-
#[derive(Serialize, Deserialize)]
494-
struct JsonResult {
496+
#[derive(Serialize)]
497+
struct JsonResult<'a> {
495498
logs: Vec<String>,
496-
gas_used: u64,
497-
returns: HashMap<String, NestedValue>,
499+
returns: &'a HashMap<String, NestedValue>,
500+
#[serde(flatten)]
501+
result: &'a ScriptResult,
498502
}
499503

500504
#[derive(Clone, Serialize, Deserialize)]

0 commit comments

Comments
 (0)