diff --git a/crates/artifacts/solc/src/ast/mod.rs b/crates/artifacts/solc/src/ast/mod.rs index 92e995934..90cf1e65e 100644 --- a/crates/artifacts/solc/src/ast/mod.rs +++ b/crates/artifacts/solc/src/ast/mod.rs @@ -175,10 +175,14 @@ ast_node!( #[serde(rename = "contractKind")] kind: ContractKind, documentation: Option, - fully_implemented: bool, + // Not available when "stopAfter": "parsing" is specified. + fully_implemented: Option, + // Not available when "stopAfter": "parsing" is specified. + #[serde(default)] linearized_base_contracts: Vec, nodes: Vec, - scope: usize, + // Not available when "stopAfter": "parsing" is specified. + scope: Option, #[serde(default, deserialize_with = "serde_helpers::default_for_null")] used_errors: Vec, #[serde(default, deserialize_with = "serde_helpers::default_for_null")] @@ -536,7 +540,8 @@ ast_node!( #[serde(default)] mutability: Option, overrides: Option, - scope: usize, + // Not available when "stopAfter": "parsing" is specified. + scope: Option, storage_location: StorageLocation, type_descriptions: TypeDescriptions, type_name: Option, @@ -713,7 +718,8 @@ ast_node!( overrides: Option, parameters: ParameterList, return_parameters: ParameterList, - scope: usize, + // Not available when "stopAfter": "parsing" is specified. + scope: Option, visibility: Visibility, /// The kind of function this node defines. Only valid for Solidity versions 0.5.x and /// above. @@ -1028,7 +1034,8 @@ ast_node!( name_location: Option, canonical_name: String, members: Vec, - scope: usize, + // Not available when "stopAfter": "parsing" is specified. + scope: Option, visibility: Visibility, } ); @@ -1082,7 +1089,8 @@ ast_node!( file: String, #[serde(default, with = "serde_helpers::display_from_str_opt")] name_location: Option, - scope: usize, + // Not available when "stopAfter": "parsing" is specified. + scope: Option, source_unit: usize, symbol_aliases: Vec, unit_alias: String,