foundry_config/
vyper.rs
1use foundry_compilers::artifacts::{vyper::VyperOptimizationMode, EvmVersion};
4use serde::{Deserialize, Serialize};
5use std::path::PathBuf;
6
7#[derive(Default, Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
8pub struct VyperConfig {
9 #[serde(default, skip_serializing_if = "Option::is_none")]
11 pub optimize: Option<VyperOptimizationMode>,
12 #[serde(default, skip_serializing_if = "Option::is_none")]
14 pub path: Option<PathBuf>,
15 #[serde(default, skip_serializing_if = "Option::is_none")]
17 pub experimental_codegen: Option<bool>,
18}
19
20pub fn normalize_evm_version_vyper(evm_version: EvmVersion) -> EvmVersion {
23 if evm_version >= EvmVersion::Prague {
24 return EvmVersion::Cancun;
25 }
26
27 evm_version
28}