multiversx_sc_meta_lib/
code_report_json.rs

1use serde::{Deserialize, Serialize};
2
3use crate::tools::CodeReport;
4
5#[derive(Serialize, Deserialize, Default)]
6#[serde(rename_all = "camelCase")]
7pub struct CodeReportJson {
8    #[serde(default)]
9    pub path: String,
10
11    #[serde(default)]
12    pub size: usize,
13
14    #[serde(default)]
15    pub has_allocator: bool,
16
17    #[serde(default)]
18    pub has_panic: String,
19}
20
21impl CodeReportJson {
22    pub fn new(report: &CodeReport, size: usize) -> CodeReportJson {
23        CodeReportJson {
24            path: report.path.to_string_lossy().to_string(),
25            size,
26            has_allocator: report.has_allocator,
27            has_panic: report.has_panic.to_string(),
28        }
29    }
30}