diff --git a/corelib/src/integer.cairo b/corelib/src/integer.cairo index bd395bea93c..0ff724d796d 100644 --- a/corelib/src/integer.cairo +++ b/corelib/src/integer.cairo @@ -1738,6 +1738,40 @@ impl U256Default of Default { } } +impl I8Default of Default { + #[inline(always)] + fn default() -> i8 nopanic { + 0_i8 + } +} + +impl I16Default of Default { + #[inline(always)] + fn default() -> i16 nopanic { + 0_i16 + } +} + +impl I32Default of Default { + #[inline(always)] + fn default() -> i32 nopanic { + 0_i32 + } +} + +impl I64Default of Default { + #[inline(always)] + fn default() -> i64 nopanic { + 0_i64 + } +} + +impl I128Default of Default { + #[inline(always)] + fn default() -> i128 nopanic { + 0_i128 + } +} /// Default values for felt252_dict values. impl U8Felt252DictValue of Felt252DictValue { diff --git a/corelib/src/test/integer_test.cairo b/corelib/src/test/integer_test.cairo index 1a7d4dc38b9..092d9fcc76c 100644 --- a/corelib/src/test/integer_test.cairo +++ b/corelib/src/test/integer_test.cairo @@ -886,6 +886,11 @@ fn test_default_values() { assert_eq(@Default::default(), @0_u64, '0 == 0'); assert_eq(@Default::default(), @0_u128, '0 == 0'); assert_eq(@Default::default(), @0_u256, '0 == 0'); + assert_eq(@Default::default(), @0_i8, '0 == 0'); + assert_eq(@Default::default(), @0_i16, '0 == 0'); + assert_eq(@Default::default(), @0_i32, '0 == 0'); + assert_eq(@Default::default(), @0_i64, '0 == 0'); + assert_eq(@Default::default(), @0_i128, '0 == 0'); } #[test]