#[allow(non_camel_case_types, non_snake_case, clippy::style)]
pub mod ContractsRegistry {
use super::*;
use alloy::sol_types as alloy_sol_types;
#[rustfmt::skip]
#[allow(clippy::all)]
pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
b"`\x80`@R4\x80\x15a\0\x10W`\0\x80\xFD[Pa\x08\"\x80a\0 `\09`\0\xF3\xFE`\x80`@R4\x80\x15a\0\x10W`\0\x80\xFD[P`\x046\x10a\0}W`\x005`\xE0\x1C\x80c\x7F\xAF\xBB\xDD\x11a\0[W\x80c\x7F\xAF\xBB\xDD\x14a\0\xEEW\x80c\x8768\x1A\x14a\x01\x1DW\x80c\x8C[\x83\x85\x14a\x014W\x80c\xAC\xD5\xBA\xA2\x14a\x01\x80W`\0\x80\xFD[\x80c<\xA6\xBB\x92\x14a\0\x82W\x80chB\x10\x9E\x14a\0\xABW\x80c\x7F<,(\x14a\0\xD9W[`\0\x80\xFD[a\0\x95a\0\x906`\x04a\x04\xF7V[a\x01\x93V[`@Qa\0\xA2\x91\x90a\x05@V[`@Q\x80\x91\x03\x90\xF3[a\0\xBEa\0\xB96`\x04a\x06\x16V[a\x02-V[`@\x80Q\x93\x84R` \x84\x01\x92\x90\x92R\x90\x82\x01R``\x01a\0\xA2V[a\0\xECa\0\xE76`\x04a\x06[V[a\x02\xA2V[\0[a\0\xBEa\0\xFC6`\x04a\x04\xF7V[`\x03` R`\0\x90\x81R`@\x90 \x80T`\x01\x82\x01T`\x02\x90\x92\x01T\x90\x91\x90\x83V[a\x01&`\x02T\x81V[`@Q\x90\x81R` \x01a\0\xA2V[a\x01ha\x01B6`\x04a\x06\xB9V[\x80Q` \x81\x83\x01\x81\x01\x80Q`\0\x82R\x92\x82\x01\x91\x90\x93\x01 \x91RT`\x01`\x01`\xA0\x1B\x03\x16\x81V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\0\xA2V[a\0\xECa\x01\x8E6`\x04a\x06\xF6V[a\x03\xA0V[`\x01` R`\0\x90\x81R`@\x90 \x80Ta\x01\xAC\x90a\x07JV[\x80`\x1F\x01` \x80\x91\x04\x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80Ta\x01\xD8\x90a\x07JV[\x80\x15a\x02%W\x80`\x1F\x10a\x01\xFAWa\x01\0\x80\x83T\x04\x02\x83R\x91` \x01\x91a\x02%V[\x82\x01\x91\x90`\0R` `\0 \x90[\x81T\x81R\x90`\x01\x01\x90` \x01\x80\x83\x11a\x02\x08W\x82\x90\x03`\x1F\x16\x82\x01\x91[PPPPP\x81V[`\0\x80`\0\x80`\x03`\0\x87\x87`@Q` \x01a\x02J\x92\x91\x90a\x07\x85V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x81R\x81Q` \x92\x83\x01 \x83R\x82\x82\x01\x93\x90\x93R\x90\x82\x01`\0 \x82Q``\x81\x01\x84R\x81T\x80\x82R`\x01\x83\x01T\x93\x82\x01\x84\x90R`\x02\x90\x92\x01T\x93\x01\x83\x90R\x95P\x93P\x91PP\x92P\x92P\x92V[`\0`\x01`\x01`\xA0\x1B\x03\x16`\0\x83`@Qa\x02\xBD\x91\x90a\x07\xA7V[\x90\x81R`@Q\x90\x81\x90\x03` \x01\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x14a\x03'W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1B`$\x82\x01R\x7Fcontract already registered\0\0\0\0\0`D\x82\x01R`d\x01`@Q\x80\x91\x03\x90\xFD[\x80`\0\x83`@Qa\x038\x91\x90a\x07\xA7V[\x90\x81R`@\x80Q` \x92\x81\x90\x03\x83\x01\x90 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x94\x90\x94\x16\x93\x90\x93\x17\x90\x92U`\x02T`\0\x90\x81R`\x01\x82R\x91\x90\x91 \x83Qa\x03\x86\x92\x85\x01\x90a\x04^V[P`\x02\x80T\x90`\0a\x03\x97\x83a\x07\xC3V[\x91\x90PUPPPV[`\x03`\0\x85\x85`@Q` \x01a\x03\xB7\x92\x91\x90a\x07\x85V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x81R` \x01\x90\x81R` \x01`\0 `\0\x01T`\0\x14a\x03\xEBW`\0\x80\xFD[`@Q\x80``\x01`@R\x80\x83\x81R` \x01\x82\x81R` \x01\x84\x81RP`\x03`\0\x86`@Q` \x01a\x04\x1B\x91\x90a\x07\xA7V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x81R\x81Q` \x92\x83\x01 \x83R\x82\x82\x01\x93\x90\x93R\x90\x82\x01`\0 \x83Q\x81U\x90\x83\x01Q`\x01\x82\x01U\x91\x01Q`\x02\x90\x91\x01UPPPPV[\x82\x80Ta\x04j\x90a\x07JV[\x90`\0R` `\0 \x90`\x1F\x01` \x90\x04\x81\x01\x92\x82a\x04\x8CW`\0\x85Ua\x04\xD2V[\x82`\x1F\x10a\x04\xA5W\x80Q`\xFF\x19\x16\x83\x80\x01\x17\x85Ua\x04\xD2V[\x82\x80\x01`\x01\x01\x85U\x82\x15a\x04\xD2W\x91\x82\x01[\x82\x81\x11\x15a\x04\xD2W\x82Q\x82U\x91` \x01\x91\x90`\x01\x01\x90a\x04\xB7V[Pa\x04\xDE\x92\x91Pa\x04\xE2V[P\x90V[[\x80\x82\x11\x15a\x04\xDEW`\0\x81U`\x01\x01a\x04\xE3V[`\0` \x82\x84\x03\x12\x15a\x05\tW`\0\x80\xFD[P5\x91\x90PV[`\0[\x83\x81\x10\x15a\x05+W\x81\x81\x01Q\x83\x82\x01R` \x01a\x05\x13V[\x83\x81\x11\x15a\x05:W`\0\x84\x84\x01R[PPPPV[` \x81R`\0\x82Q\x80` \x84\x01Ra\x05_\x81`@\x85\x01` \x87\x01a\x05\x10V[`\x1F\x01`\x1F\x19\x16\x91\x90\x91\x01`@\x01\x92\x91PPV[cNH{q`\xE0\x1B`\0R`A`\x04R`$`\0\xFD[`\0\x82`\x1F\x83\x01\x12a\x05\x9AW`\0\x80\xFD[\x815g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\x05\xB5Wa\x05\xB5a\x05sV[`@Q`\x1F\x83\x01`\x1F\x19\x90\x81\x16`?\x01\x16\x81\x01\x90\x82\x82\x11\x81\x83\x10\x17\x15a\x05\xDDWa\x05\xDDa\x05sV[\x81`@R\x83\x81R\x86` \x85\x88\x01\x01\x11\x15a\x05\xF6W`\0\x80\xFD[\x83` \x87\x01` \x83\x017`\0` \x85\x83\x01\x01R\x80\x94PPPPP\x92\x91PPV[`\0\x80`@\x83\x85\x03\x12\x15a\x06)W`\0\x80\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x06@W`\0\x80\xFD[a\x06L\x85\x82\x86\x01a\x05\x89V[\x95` \x94\x90\x94\x015\x94PPPPV[`\0\x80`@\x83\x85\x03\x12\x15a\x06nW`\0\x80\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x06\x85W`\0\x80\xFD[a\x06\x91\x85\x82\x86\x01a\x05\x89V[\x92PP` \x83\x015`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x06\xAEW`\0\x80\xFD[\x80\x91PP\x92P\x92\x90PV[`\0` \x82\x84\x03\x12\x15a\x06\xCBW`\0\x80\xFD[\x815g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x06\xE2W`\0\x80\xFD[a\x06\xEE\x84\x82\x85\x01a\x05\x89V[\x94\x93PPPPV[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\x07\x0CW`\0\x80\xFD[\x845g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x07#W`\0\x80\xFD[a\x07/\x87\x82\x88\x01a\x05\x89V[\x97` \x87\x015\x97P`@\x87\x015\x96``\x015\x95P\x93PPPPV[`\x01\x81\x81\x1C\x90\x82\x16\x80a\x07^W`\x7F\x82\x16\x91P[` \x82\x10\x81\x14\x15a\x07\x7FWcNH{q`\xE0\x1B`\0R`\"`\x04R`$`\0\xFD[P\x91\x90PV[`\0\x83Qa\x07\x97\x81\x84` \x88\x01a\x05\x10V[\x91\x90\x91\x01\x91\x82RP` \x01\x91\x90PV[`\0\x82Qa\x07\xB9\x81\x84` \x87\x01a\x05\x10V[\x91\x90\x91\x01\x92\x91PPV[`\0`\0\x19\x82\x14\x15a\x07\xE5WcNH{q`\xE0\x1B`\0R`\x11`\x04R`$`\0\xFD[P`\x01\x01\x90V\xFE\xA2dipfsX\"\x12 \x89\x15~\x89\n\xF6\xE8\xB7~\xDB\xDF\xF6sU{\xF0\x7F\r\x01\xEA~\x96\xDF\xD5\x1B-#\xAA:l\xC6\xD8dsolcC\0\x08\x0C\x003",
);
#[rustfmt::skip]
#[allow(clippy::all)]
pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
b"`\x80`@R4\x80\x15a\0\x10W`\0\x80\xFD[P`\x046\x10a\0}W`\x005`\xE0\x1C\x80c\x7F\xAF\xBB\xDD\x11a\0[W\x80c\x7F\xAF\xBB\xDD\x14a\0\xEEW\x80c\x8768\x1A\x14a\x01\x1DW\x80c\x8C[\x83\x85\x14a\x014W\x80c\xAC\xD5\xBA\xA2\x14a\x01\x80W`\0\x80\xFD[\x80c<\xA6\xBB\x92\x14a\0\x82W\x80chB\x10\x9E\x14a\0\xABW\x80c\x7F<,(\x14a\0\xD9W[`\0\x80\xFD[a\0\x95a\0\x906`\x04a\x04\xF7V[a\x01\x93V[`@Qa\0\xA2\x91\x90a\x05@V[`@Q\x80\x91\x03\x90\xF3[a\0\xBEa\0\xB96`\x04a\x06\x16V[a\x02-V[`@\x80Q\x93\x84R` \x84\x01\x92\x90\x92R\x90\x82\x01R``\x01a\0\xA2V[a\0\xECa\0\xE76`\x04a\x06[V[a\x02\xA2V[\0[a\0\xBEa\0\xFC6`\x04a\x04\xF7V[`\x03` R`\0\x90\x81R`@\x90 \x80T`\x01\x82\x01T`\x02\x90\x92\x01T\x90\x91\x90\x83V[a\x01&`\x02T\x81V[`@Q\x90\x81R` \x01a\0\xA2V[a\x01ha\x01B6`\x04a\x06\xB9V[\x80Q` \x81\x83\x01\x81\x01\x80Q`\0\x82R\x92\x82\x01\x91\x90\x93\x01 \x91RT`\x01`\x01`\xA0\x1B\x03\x16\x81V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\0\xA2V[a\0\xECa\x01\x8E6`\x04a\x06\xF6V[a\x03\xA0V[`\x01` R`\0\x90\x81R`@\x90 \x80Ta\x01\xAC\x90a\x07JV[\x80`\x1F\x01` \x80\x91\x04\x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80Ta\x01\xD8\x90a\x07JV[\x80\x15a\x02%W\x80`\x1F\x10a\x01\xFAWa\x01\0\x80\x83T\x04\x02\x83R\x91` \x01\x91a\x02%V[\x82\x01\x91\x90`\0R` `\0 \x90[\x81T\x81R\x90`\x01\x01\x90` \x01\x80\x83\x11a\x02\x08W\x82\x90\x03`\x1F\x16\x82\x01\x91[PPPPP\x81V[`\0\x80`\0\x80`\x03`\0\x87\x87`@Q` \x01a\x02J\x92\x91\x90a\x07\x85V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x81R\x81Q` \x92\x83\x01 \x83R\x82\x82\x01\x93\x90\x93R\x90\x82\x01`\0 \x82Q``\x81\x01\x84R\x81T\x80\x82R`\x01\x83\x01T\x93\x82\x01\x84\x90R`\x02\x90\x92\x01T\x93\x01\x83\x90R\x95P\x93P\x91PP\x92P\x92P\x92V[`\0`\x01`\x01`\xA0\x1B\x03\x16`\0\x83`@Qa\x02\xBD\x91\x90a\x07\xA7V[\x90\x81R`@Q\x90\x81\x90\x03` \x01\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x14a\x03'W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1B`$\x82\x01R\x7Fcontract already registered\0\0\0\0\0`D\x82\x01R`d\x01`@Q\x80\x91\x03\x90\xFD[\x80`\0\x83`@Qa\x038\x91\x90a\x07\xA7V[\x90\x81R`@\x80Q` \x92\x81\x90\x03\x83\x01\x90 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x94\x90\x94\x16\x93\x90\x93\x17\x90\x92U`\x02T`\0\x90\x81R`\x01\x82R\x91\x90\x91 \x83Qa\x03\x86\x92\x85\x01\x90a\x04^V[P`\x02\x80T\x90`\0a\x03\x97\x83a\x07\xC3V[\x91\x90PUPPPV[`\x03`\0\x85\x85`@Q` \x01a\x03\xB7\x92\x91\x90a\x07\x85V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x81R` \x01\x90\x81R` \x01`\0 `\0\x01T`\0\x14a\x03\xEBW`\0\x80\xFD[`@Q\x80``\x01`@R\x80\x83\x81R` \x01\x82\x81R` \x01\x84\x81RP`\x03`\0\x86`@Q` \x01a\x04\x1B\x91\x90a\x07\xA7V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x81R\x81Q` \x92\x83\x01 \x83R\x82\x82\x01\x93\x90\x93R\x90\x82\x01`\0 \x83Q\x81U\x90\x83\x01Q`\x01\x82\x01U\x91\x01Q`\x02\x90\x91\x01UPPPPV[\x82\x80Ta\x04j\x90a\x07JV[\x90`\0R` `\0 \x90`\x1F\x01` \x90\x04\x81\x01\x92\x82a\x04\x8CW`\0\x85Ua\x04\xD2V[\x82`\x1F\x10a\x04\xA5W\x80Q`\xFF\x19\x16\x83\x80\x01\x17\x85Ua\x04\xD2V[\x82\x80\x01`\x01\x01\x85U\x82\x15a\x04\xD2W\x91\x82\x01[\x82\x81\x11\x15a\x04\xD2W\x82Q\x82U\x91` \x01\x91\x90`\x01\x01\x90a\x04\xB7V[Pa\x04\xDE\x92\x91Pa\x04\xE2V[P\x90V[[\x80\x82\x11\x15a\x04\xDEW`\0\x81U`\x01\x01a\x04\xE3V[`\0` \x82\x84\x03\x12\x15a\x05\tW`\0\x80\xFD[P5\x91\x90PV[`\0[\x83\x81\x10\x15a\x05+W\x81\x81\x01Q\x83\x82\x01R` \x01a\x05\x13V[\x83\x81\x11\x15a\x05:W`\0\x84\x84\x01R[PPPPV[` \x81R`\0\x82Q\x80` \x84\x01Ra\x05_\x81`@\x85\x01` \x87\x01a\x05\x10V[`\x1F\x01`\x1F\x19\x16\x91\x90\x91\x01`@\x01\x92\x91PPV[cNH{q`\xE0\x1B`\0R`A`\x04R`$`\0\xFD[`\0\x82`\x1F\x83\x01\x12a\x05\x9AW`\0\x80\xFD[\x815g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\x05\xB5Wa\x05\xB5a\x05sV[`@Q`\x1F\x83\x01`\x1F\x19\x90\x81\x16`?\x01\x16\x81\x01\x90\x82\x82\x11\x81\x83\x10\x17\x15a\x05\xDDWa\x05\xDDa\x05sV[\x81`@R\x83\x81R\x86` \x85\x88\x01\x01\x11\x15a\x05\xF6W`\0\x80\xFD[\x83` \x87\x01` \x83\x017`\0` \x85\x83\x01\x01R\x80\x94PPPPP\x92\x91PPV[`\0\x80`@\x83\x85\x03\x12\x15a\x06)W`\0\x80\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x06@W`\0\x80\xFD[a\x06L\x85\x82\x86\x01a\x05\x89V[\x95` \x94\x90\x94\x015\x94PPPPV[`\0\x80`@\x83\x85\x03\x12\x15a\x06nW`\0\x80\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x06\x85W`\0\x80\xFD[a\x06\x91\x85\x82\x86\x01a\x05\x89V[\x92PP` \x83\x015`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x06\xAEW`\0\x80\xFD[\x80\x91PP\x92P\x92\x90PV[`\0` \x82\x84\x03\x12\x15a\x06\xCBW`\0\x80\xFD[\x815g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x06\xE2W`\0\x80\xFD[a\x06\xEE\x84\x82\x85\x01a\x05\x89V[\x94\x93PPPPV[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\x07\x0CW`\0\x80\xFD[\x845g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x07#W`\0\x80\xFD[a\x07/\x87\x82\x88\x01a\x05\x89V[\x97` \x87\x015\x97P`@\x87\x015\x96``\x015\x95P\x93PPPPV[`\x01\x81\x81\x1C\x90\x82\x16\x80a\x07^W`\x7F\x82\x16\x91P[` \x82\x10\x81\x14\x15a\x07\x7FWcNH{q`\xE0\x1B`\0R`\"`\x04R`$`\0\xFD[P\x91\x90PV[`\0\x83Qa\x07\x97\x81\x84` \x88\x01a\x05\x10V[\x91\x90\x91\x01\x91\x82RP` \x01\x91\x90PV[`\0\x82Qa\x07\xB9\x81\x84` \x87\x01a\x05\x10V[\x91\x90\x91\x01\x92\x91PPV[`\0`\0\x19\x82\x14\x15a\x07\xE5WcNH{q`\xE0\x1B`\0R`\x11`\x04R`$`\0\xFD[P`\x01\x01\x90V\xFE\xA2dipfsX\"\x12 \x89\x15~\x89\n\xF6\xE8\xB7~\xDB\xDF\xF6sU{\xF0\x7F\r\x01\xEA~\x96\xDF\xD5\x1B-#\xAA:l\xC6\xD8dsolcC\0\x08\x0C\x003",
);
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct anvil_testCall {
pub _0: alloy::sol_types::private::FixedBytes<32>,
}
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct anvil_testReturn {
pub timestamp: alloy::sol_types::private::primitives::aliases::U256,
pub block_number: alloy::sol_types::private::primitives::aliases::U256,
pub index: alloy::sol_types::private::primitives::aliases::I256,
}
#[allow(non_camel_case_types, non_snake_case, clippy::style)]
const _: () = {
use alloy::sol_types as alloy_sol_types;
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
#[doc(hidden)]
type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<anvil_testCall> for UnderlyingRustTuple<'_> {
fn from(value: anvil_testCall) -> Self {
(value._0,)
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for anvil_testCall {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self { _0: tuple.0 }
}
}
}
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = (
alloy::sol_types::sol_data::Uint<256>,
alloy::sol_types::sol_data::Uint<256>,
alloy::sol_types::sol_data::Int<256>,
);
#[doc(hidden)]
type UnderlyingRustTuple<'a> = (
alloy::sol_types::private::primitives::aliases::U256,
alloy::sol_types::private::primitives::aliases::U256,
alloy::sol_types::private::primitives::aliases::I256,
);
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<anvil_testReturn> for UnderlyingRustTuple<'_> {
fn from(value: anvil_testReturn) -> Self {
(value.timestamp, value.block_number, value.index)
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for anvil_testReturn {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self {
timestamp: tuple.0,
block_number: tuple.1,
index: tuple.2,
}
}
}
}
#[automatically_derived]
impl alloy_sol_types::SolCall for anvil_testCall {
type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
type Return = anvil_testReturn;
type ReturnTuple<'a> = (
alloy::sol_types::sol_data::Uint<256>,
alloy::sol_types::sol_data::Uint<256>,
alloy::sol_types::sol_data::Int<256>,
);
type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
const SIGNATURE: &'static str = "anvil_test(bytes32)";
const SELECTOR: [u8; 4] = [127u8, 175u8, 187u8, 221u8];
#[inline]
fn new<'a>(
tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
) -> Self {
tuple.into()
}
#[inline]
fn tokenize(&self) -> Self::Token<'_> {
(
<alloy::sol_types::sol_data::FixedBytes<
32,
> as alloy_sol_types::SolType>::tokenize(&self._0),
)
}
#[inline]
fn abi_decode_returns(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<Self::Return> {
<Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
data, validate,
)
.map(Into::into)
}
}
};
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct contractCountCall {}
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct contractCountReturn {
pub _0: alloy::sol_types::private::primitives::aliases::U256,
}
#[allow(non_camel_case_types, non_snake_case, clippy::style)]
const _: () = {
use alloy::sol_types as alloy_sol_types;
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = ();
#[doc(hidden)]
type UnderlyingRustTuple<'a> = ();
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<contractCountCall> for UnderlyingRustTuple<'_> {
fn from(value: contractCountCall) -> Self {
()
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for contractCountCall {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self {}
}
}
}
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
#[doc(hidden)]
type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<contractCountReturn> for UnderlyingRustTuple<'_> {
fn from(value: contractCountReturn) -> Self {
(value._0,)
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for contractCountReturn {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self { _0: tuple.0 }
}
}
}
#[automatically_derived]
impl alloy_sol_types::SolCall for contractCountCall {
type Parameters<'a> = ();
type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
type Return = contractCountReturn;
type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
const SIGNATURE: &'static str = "contractCount()";
const SELECTOR: [u8; 4] = [135u8, 54u8, 56u8, 26u8];
#[inline]
fn new<'a>(
tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
) -> Self {
tuple.into()
}
#[inline]
fn tokenize(&self) -> Self::Token<'_> {
()
}
#[inline]
fn abi_decode_returns(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<Self::Return> {
<Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
data, validate,
)
.map(Into::into)
}
}
};
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct contractNamesCall {
pub _0: alloy::sol_types::private::primitives::aliases::U256,
}
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct contractNamesReturn {
pub _0: alloy::sol_types::private::String,
}
#[allow(non_camel_case_types, non_snake_case, clippy::style)]
const _: () = {
use alloy::sol_types as alloy_sol_types;
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
#[doc(hidden)]
type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<contractNamesCall> for UnderlyingRustTuple<'_> {
fn from(value: contractNamesCall) -> Self {
(value._0,)
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for contractNamesCall {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self { _0: tuple.0 }
}
}
}
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,);
#[doc(hidden)]
type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,);
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<contractNamesReturn> for UnderlyingRustTuple<'_> {
fn from(value: contractNamesReturn) -> Self {
(value._0,)
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for contractNamesReturn {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self { _0: tuple.0 }
}
}
}
#[automatically_derived]
impl alloy_sol_types::SolCall for contractNamesCall {
type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,);
type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
type Return = contractNamesReturn;
type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,);
type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
const SIGNATURE: &'static str = "contractNames(uint256)";
const SELECTOR: [u8; 4] = [60u8, 166u8, 187u8, 146u8];
#[inline]
fn new<'a>(
tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
) -> Self {
tuple.into()
}
#[inline]
fn tokenize(&self) -> Self::Token<'_> {
(
<alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
&self._0,
),
)
}
#[inline]
fn abi_decode_returns(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<Self::Return> {
<Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
data, validate,
)
.map(Into::into)
}
}
};
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct contractsCall {
pub _0: alloy::sol_types::private::String,
}
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct contractsReturn {
pub _0: alloy::sol_types::private::Address,
}
#[allow(non_camel_case_types, non_snake_case, clippy::style)]
const _: () = {
use alloy::sol_types as alloy_sol_types;
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,);
#[doc(hidden)]
type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,);
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<contractsCall> for UnderlyingRustTuple<'_> {
fn from(value: contractsCall) -> Self {
(value._0,)
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for contractsCall {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self { _0: tuple.0 }
}
}
}
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
#[doc(hidden)]
type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<contractsReturn> for UnderlyingRustTuple<'_> {
fn from(value: contractsReturn) -> Self {
(value._0,)
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for contractsReturn {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self { _0: tuple.0 }
}
}
}
#[automatically_derived]
impl alloy_sol_types::SolCall for contractsCall {
type Parameters<'a> = (alloy::sol_types::sol_data::String,);
type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
type Return = contractsReturn;
type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
const SIGNATURE: &'static str = "contracts(string)";
const SELECTOR: [u8; 4] = [140u8, 91u8, 131u8, 133u8];
#[inline]
fn new<'a>(
tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
) -> Self {
tuple.into()
}
#[inline]
fn tokenize(&self) -> Self::Token<'_> {
(
<alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
&self._0,
),
)
}
#[inline]
fn abi_decode_returns(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<Self::Return> {
<Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
data, validate,
)
.map(Into::into)
}
}
};
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct get_test_valuesCall {
pub test_name: alloy::sol_types::private::String,
pub index: alloy::sol_types::private::primitives::aliases::I256,
}
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct get_test_valuesReturn {
pub _0: alloy::sol_types::private::primitives::aliases::U256,
pub _1: alloy::sol_types::private::primitives::aliases::U256,
pub _2: alloy::sol_types::private::primitives::aliases::I256,
}
#[allow(non_camel_case_types, non_snake_case, clippy::style)]
const _: () = {
use alloy::sol_types as alloy_sol_types;
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = (
alloy::sol_types::sol_data::String,
alloy::sol_types::sol_data::Int<256>,
);
#[doc(hidden)]
type UnderlyingRustTuple<'a> = (
alloy::sol_types::private::String,
alloy::sol_types::private::primitives::aliases::I256,
);
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<get_test_valuesCall> for UnderlyingRustTuple<'_> {
fn from(value: get_test_valuesCall) -> Self {
(value.test_name, value.index)
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for get_test_valuesCall {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self {
test_name: tuple.0,
index: tuple.1,
}
}
}
}
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = (
alloy::sol_types::sol_data::Uint<256>,
alloy::sol_types::sol_data::Uint<256>,
alloy::sol_types::sol_data::Int<256>,
);
#[doc(hidden)]
type UnderlyingRustTuple<'a> = (
alloy::sol_types::private::primitives::aliases::U256,
alloy::sol_types::private::primitives::aliases::U256,
alloy::sol_types::private::primitives::aliases::I256,
);
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<get_test_valuesReturn> for UnderlyingRustTuple<'_> {
fn from(value: get_test_valuesReturn) -> Self {
(value._0, value._1, value._2)
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for get_test_valuesReturn {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self {
_0: tuple.0,
_1: tuple.1,
_2: tuple.2,
}
}
}
}
#[automatically_derived]
impl alloy_sol_types::SolCall for get_test_valuesCall {
type Parameters<'a> = (
alloy::sol_types::sol_data::String,
alloy::sol_types::sol_data::Int<256>,
);
type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
type Return = get_test_valuesReturn;
type ReturnTuple<'a> = (
alloy::sol_types::sol_data::Uint<256>,
alloy::sol_types::sol_data::Uint<256>,
alloy::sol_types::sol_data::Int<256>,
);
type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
const SIGNATURE: &'static str = "get_test_values(string,int256)";
const SELECTOR: [u8; 4] = [104u8, 66u8, 16u8, 158u8];
#[inline]
fn new<'a>(
tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
) -> Self {
tuple.into()
}
#[inline]
fn tokenize(&self) -> Self::Token<'_> {
(
<alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
&self.test_name,
),
<alloy::sol_types::sol_data::Int<256> as alloy_sol_types::SolType>::tokenize(
&self.index,
),
)
}
#[inline]
fn abi_decode_returns(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<Self::Return> {
<Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
data, validate,
)
.map(Into::into)
}
}
};
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct registerContractCall {
pub name: alloy::sol_types::private::String,
pub _contract: alloy::sol_types::private::Address,
}
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct registerContractReturn {}
#[allow(non_camel_case_types, non_snake_case, clippy::style)]
const _: () = {
use alloy::sol_types as alloy_sol_types;
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = (
alloy::sol_types::sol_data::String,
alloy::sol_types::sol_data::Address,
);
#[doc(hidden)]
type UnderlyingRustTuple<'a> = (
alloy::sol_types::private::String,
alloy::sol_types::private::Address,
);
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<registerContractCall> for UnderlyingRustTuple<'_> {
fn from(value: registerContractCall) -> Self {
(value.name, value._contract)
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for registerContractCall {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self {
name: tuple.0,
_contract: tuple.1,
}
}
}
}
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = ();
#[doc(hidden)]
type UnderlyingRustTuple<'a> = ();
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<registerContractReturn> for UnderlyingRustTuple<'_> {
fn from(value: registerContractReturn) -> Self {
()
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for registerContractReturn {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self {}
}
}
}
#[automatically_derived]
impl alloy_sol_types::SolCall for registerContractCall {
type Parameters<'a> = (
alloy::sol_types::sol_data::String,
alloy::sol_types::sol_data::Address,
);
type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
type Return = registerContractReturn;
type ReturnTuple<'a> = ();
type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
const SIGNATURE: &'static str = "registerContract(string,address)";
const SELECTOR: [u8; 4] = [127u8, 60u8, 44u8, 40u8];
#[inline]
fn new<'a>(
tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
) -> Self {
tuple.into()
}
#[inline]
fn tokenize(&self) -> Self::Token<'_> {
(
<alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
&self.name,
),
<alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
&self._contract,
),
)
}
#[inline]
fn abi_decode_returns(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<Self::Return> {
<Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
data, validate,
)
.map(Into::into)
}
}
};
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct store_testCall {
pub test_name: alloy::sol_types::private::String,
pub index: alloy::sol_types::private::primitives::aliases::I256,
pub timestamp: alloy::sol_types::private::primitives::aliases::U256,
pub block_number: alloy::sol_types::private::primitives::aliases::U256,
}
#[allow(non_camel_case_types, non_snake_case)]
#[derive(Clone)]
pub struct store_testReturn {}
#[allow(non_camel_case_types, non_snake_case, clippy::style)]
const _: () = {
use alloy::sol_types as alloy_sol_types;
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = (
alloy::sol_types::sol_data::String,
alloy::sol_types::sol_data::Int<256>,
alloy::sol_types::sol_data::Uint<256>,
alloy::sol_types::sol_data::Uint<256>,
);
#[doc(hidden)]
type UnderlyingRustTuple<'a> = (
alloy::sol_types::private::String,
alloy::sol_types::private::primitives::aliases::I256,
alloy::sol_types::private::primitives::aliases::U256,
alloy::sol_types::private::primitives::aliases::U256,
);
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<store_testCall> for UnderlyingRustTuple<'_> {
fn from(value: store_testCall) -> Self {
(
value.test_name,
value.index,
value.timestamp,
value.block_number,
)
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for store_testCall {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self {
test_name: tuple.0,
index: tuple.1,
timestamp: tuple.2,
block_number: tuple.3,
}
}
}
}
{
#[doc(hidden)]
type UnderlyingSolTuple<'a> = ();
#[doc(hidden)]
type UnderlyingRustTuple<'a> = ();
#[cfg(test)]
#[allow(dead_code, unreachable_patterns)]
fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
match _t {
alloy_sol_types::private::AssertTypeEq::<
<UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
>(_) => {}
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<store_testReturn> for UnderlyingRustTuple<'_> {
fn from(value: store_testReturn) -> Self {
()
}
}
#[automatically_derived]
#[doc(hidden)]
impl ::core::convert::From<UnderlyingRustTuple<'_>> for store_testReturn {
fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
Self {}
}
}
}
#[automatically_derived]
impl alloy_sol_types::SolCall for store_testCall {
type Parameters<'a> = (
alloy::sol_types::sol_data::String,
alloy::sol_types::sol_data::Int<256>,
alloy::sol_types::sol_data::Uint<256>,
alloy::sol_types::sol_data::Uint<256>,
);
type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
type Return = store_testReturn;
type ReturnTuple<'a> = ();
type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
const SIGNATURE: &'static str = "store_test(string,int256,uint256,uint256)";
const SELECTOR: [u8; 4] = [172u8, 213u8, 186u8, 162u8];
#[inline]
fn new<'a>(
tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
) -> Self {
tuple.into()
}
#[inline]
fn tokenize(&self) -> Self::Token<'_> {
(
<alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
&self.test_name,
),
<alloy::sol_types::sol_data::Int<256> as alloy_sol_types::SolType>::tokenize(
&self.index,
),
<alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
&self.timestamp,
),
<alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
&self.block_number,
),
)
}
#[inline]
fn abi_decode_returns(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<Self::Return> {
<Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
data, validate,
)
.map(Into::into)
}
}
};
pub enum ContractsRegistryCalls {
anvil_test(anvil_testCall),
contractCount(contractCountCall),
contractNames(contractNamesCall),
contracts(contractsCall),
get_test_values(get_test_valuesCall),
registerContract(registerContractCall),
store_test(store_testCall),
}
#[automatically_derived]
impl ContractsRegistryCalls {
pub const SELECTORS: &'static [[u8; 4usize]] = &[
[60u8, 166u8, 187u8, 146u8],
[104u8, 66u8, 16u8, 158u8],
[127u8, 60u8, 44u8, 40u8],
[127u8, 175u8, 187u8, 221u8],
[135u8, 54u8, 56u8, 26u8],
[140u8, 91u8, 131u8, 133u8],
[172u8, 213u8, 186u8, 162u8],
];
}
#[automatically_derived]
impl alloy_sol_types::SolInterface for ContractsRegistryCalls {
const NAME: &'static str = "ContractsRegistryCalls";
const MIN_DATA_LENGTH: usize = 0usize;
const COUNT: usize = 7usize;
#[inline]
fn selector(&self) -> [u8; 4] {
match self {
Self::anvil_test(_) => <anvil_testCall as alloy_sol_types::SolCall>::SELECTOR,
Self::contractCount(_) => <contractCountCall as alloy_sol_types::SolCall>::SELECTOR,
Self::contractNames(_) => <contractNamesCall as alloy_sol_types::SolCall>::SELECTOR,
Self::contracts(_) => <contractsCall as alloy_sol_types::SolCall>::SELECTOR,
Self::get_test_values(_) => {
<get_test_valuesCall as alloy_sol_types::SolCall>::SELECTOR
}
Self::registerContract(_) => {
<registerContractCall as alloy_sol_types::SolCall>::SELECTOR
}
Self::store_test(_) => <store_testCall as alloy_sol_types::SolCall>::SELECTOR,
}
}
#[inline]
fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
Self::SELECTORS.get(i).copied()
}
#[inline]
fn valid_selector(selector: [u8; 4]) -> bool {
Self::SELECTORS.binary_search(&selector).is_ok()
}
#[inline]
#[allow(unsafe_code, non_snake_case)]
fn abi_decode_raw(
selector: [u8; 4],
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<Self> {
static DECODE_SHIMS: &[fn(
&[u8],
bool,
)
-> alloy_sol_types::Result<ContractsRegistryCalls>] = &[
{
fn contractNames(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<ContractsRegistryCalls> {
<contractNamesCall as alloy_sol_types::SolCall>::abi_decode_raw(
data, validate,
)
.map(ContractsRegistryCalls::contractNames)
}
contractNames
},
{
fn get_test_values(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<ContractsRegistryCalls> {
<get_test_valuesCall as alloy_sol_types::SolCall>::abi_decode_raw(
data, validate,
)
.map(ContractsRegistryCalls::get_test_values)
}
get_test_values
},
{
fn registerContract(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<ContractsRegistryCalls> {
<registerContractCall as alloy_sol_types::SolCall>::abi_decode_raw(
data, validate,
)
.map(ContractsRegistryCalls::registerContract)
}
registerContract
},
{
fn anvil_test(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<ContractsRegistryCalls> {
<anvil_testCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
.map(ContractsRegistryCalls::anvil_test)
}
anvil_test
},
{
fn contractCount(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<ContractsRegistryCalls> {
<contractCountCall as alloy_sol_types::SolCall>::abi_decode_raw(
data, validate,
)
.map(ContractsRegistryCalls::contractCount)
}
contractCount
},
{
fn contracts(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<ContractsRegistryCalls> {
<contractsCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
.map(ContractsRegistryCalls::contracts)
}
contracts
},
{
fn store_test(
data: &[u8],
validate: bool,
) -> alloy_sol_types::Result<ContractsRegistryCalls> {
<store_testCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
.map(ContractsRegistryCalls::store_test)
}
store_test
},
];
let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
return Err(alloy_sol_types::Error::unknown_selector(
<Self as alloy_sol_types::SolInterface>::NAME,
selector,
));
};
(unsafe { DECODE_SHIMS.get_unchecked(idx) })(data, validate)
}
#[inline]
fn abi_encoded_size(&self) -> usize {
match self {
Self::anvil_test(inner) => {
<anvil_testCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
}
Self::contractCount(inner) => {
<contractCountCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
}
Self::contractNames(inner) => {
<contractNamesCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
}
Self::contracts(inner) => {
<contractsCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
}
Self::get_test_values(inner) => {
<get_test_valuesCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
}
Self::registerContract(inner) => {
<registerContractCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
}
Self::store_test(inner) => {
<store_testCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
}
}
}
#[inline]
fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
match self {
Self::anvil_test(inner) => {
<anvil_testCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
}
Self::contractCount(inner) => {
<contractCountCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
}
Self::contractNames(inner) => {
<contractNamesCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
}
Self::contracts(inner) => {
<contractsCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
}
Self::get_test_values(inner) => {
<get_test_valuesCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
}
Self::registerContract(inner) => {
<registerContractCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
}
Self::store_test(inner) => {
<store_testCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
}
}
}
}
use alloy::contract as alloy_contract;
#[inline]
pub const fn new<
T: alloy_contract::private::Transport + ::core::clone::Clone,
P: alloy_contract::private::Provider<T, N>,
N: alloy_contract::private::Network,
>(
address: alloy_sol_types::private::Address,
provider: P,
) -> ContractsRegistryInstance<T, P, N> {
ContractsRegistryInstance::<T, P, N>::new(address, provider)
}
#[inline]
pub fn deploy<
T: alloy_contract::private::Transport + ::core::clone::Clone,
P: alloy_contract::private::Provider<T, N>,
N: alloy_contract::private::Network,
>(
provider: P,
) -> impl ::core::future::Future<Output = alloy_contract::Result<ContractsRegistryInstance<T, P, N>>>
{
ContractsRegistryInstance::<T, P, N>::deploy(provider)
}
#[inline]
pub fn deploy_builder<
T: alloy_contract::private::Transport + ::core::clone::Clone,
P: alloy_contract::private::Provider<T, N>,
N: alloy_contract::private::Network,
>(
provider: P,
) -> alloy_contract::RawCallBuilder<T, P, N> {
ContractsRegistryInstance::<T, P, N>::deploy_builder(provider)
}
#[derive(Clone)]
pub struct ContractsRegistryInstance<T, P, N = alloy_contract::private::Ethereum> {
address: alloy_sol_types::private::Address,
provider: P,
_network_transport: ::core::marker::PhantomData<(N, T)>,
}
#[automatically_derived]
impl<T, P, N> ::core::fmt::Debug for ContractsRegistryInstance<T, P, N> {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ContractsRegistryInstance")
.field(&self.address)
.finish()
}
}
#[automatically_derived]
impl<
T: alloy_contract::private::Transport + ::core::clone::Clone,
P: alloy_contract::private::Provider<T, N>,
N: alloy_contract::private::Network,
> ContractsRegistryInstance<T, P, N>
{
#[inline]
pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self {
Self {
address,
provider,
_network_transport: ::core::marker::PhantomData,
}
}
#[inline]
pub async fn deploy(
provider: P,
) -> alloy_contract::Result<ContractsRegistryInstance<T, P, N>> {
let call_builder = Self::deploy_builder(provider);
let contract_address = call_builder.deploy().await?;
Ok(Self::new(contract_address, call_builder.provider))
}
#[inline]
pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder<T, P, N> {
alloy_contract::RawCallBuilder::new_raw_deploy(
provider,
::core::clone::Clone::clone(&BYTECODE),
)
}
#[inline]
pub const fn address(&self) -> &alloy_sol_types::private::Address {
&self.address
}
#[inline]
pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
self.address = address;
}
pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
self.set_address(address);
self
}
#[inline]
pub const fn provider(&self) -> &P {
&self.provider
}
}
impl<T, P: ::core::clone::Clone, N> ContractsRegistryInstance<T, &P, N> {
#[inline]
pub fn with_cloned_provider(self) -> ContractsRegistryInstance<T, P, N> {
ContractsRegistryInstance {
address: self.address,
provider: ::core::clone::Clone::clone(&self.provider),
_network_transport: ::core::marker::PhantomData,
}
}
}
#[automatically_derived]
impl<
T: alloy_contract::private::Transport + ::core::clone::Clone,
P: alloy_contract::private::Provider<T, N>,
N: alloy_contract::private::Network,
> ContractsRegistryInstance<T, P, N>
{
pub fn call_builder<C: alloy_sol_types::SolCall>(
&self,
call: &C,
) -> alloy_contract::SolCallBuilder<T, &P, C, N> {
alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
}
pub fn anvil_test(
&self,
_0: alloy::sol_types::private::FixedBytes<32>,
) -> alloy_contract::SolCallBuilder<T, &P, anvil_testCall, N> {
self.call_builder(&anvil_testCall { _0 })
}
pub fn contractCount(&self) -> alloy_contract::SolCallBuilder<T, &P, contractCountCall, N> {
self.call_builder(&contractCountCall {})
}
pub fn contractNames(
&self,
_0: alloy::sol_types::private::primitives::aliases::U256,
) -> alloy_contract::SolCallBuilder<T, &P, contractNamesCall, N> {
self.call_builder(&contractNamesCall { _0 })
}
pub fn contracts(
&self,
_0: alloy::sol_types::private::String,
) -> alloy_contract::SolCallBuilder<T, &P, contractsCall, N> {
self.call_builder(&contractsCall { _0 })
}
pub fn get_test_values(
&self,
test_name: alloy::sol_types::private::String,
index: alloy::sol_types::private::primitives::aliases::I256,
) -> alloy_contract::SolCallBuilder<T, &P, get_test_valuesCall, N> {
self.call_builder(&get_test_valuesCall { test_name, index })
}
pub fn registerContract(
&self,
name: alloy::sol_types::private::String,
_contract: alloy::sol_types::private::Address,
) -> alloy_contract::SolCallBuilder<T, &P, registerContractCall, N> {
self.call_builder(®isterContractCall { name, _contract })
}
pub fn store_test(
&self,
test_name: alloy::sol_types::private::String,
index: alloy::sol_types::private::primitives::aliases::I256,
timestamp: alloy::sol_types::private::primitives::aliases::U256,
block_number: alloy::sol_types::private::primitives::aliases::U256,
) -> alloy_contract::SolCallBuilder<T, &P, store_testCall, N> {
self.call_builder(&store_testCall {
test_name,
index,
timestamp,
block_number,
})
}
}
#[automatically_derived]
impl<
T: alloy_contract::private::Transport + ::core::clone::Clone,
P: alloy_contract::private::Provider<T, N>,
N: alloy_contract::private::Network,
> ContractsRegistryInstance<T, P, N>
{
pub fn event_filter<E: alloy_sol_types::SolEvent>(
&self,
) -> alloy_contract::Event<T, &P, E, N> {
alloy_contract::Event::new_sol(&self.provider, &self.address)
}
}
}