@aztec/accounts 4.0.0-nightly.20260107 → 4.0.0-nightly.20260108
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"transpiled": true,
|
|
3
|
-
"noir_version": "1.0.0-beta.
|
|
3
|
+
"noir_version": "1.0.0-beta.18+c9a8bf882069681672e68b2612e4119592c4485a",
|
|
4
4
|
"name": "SchnorrSingleKeyAccount",
|
|
5
5
|
"functions": [
|
|
6
6
|
{
|
|
@@ -1905,9 +1905,9 @@
|
|
|
1905
1905
|
}
|
|
1906
1906
|
}
|
|
1907
1907
|
},
|
|
1908
|
-
"bytecode": "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",
|
|
1909
|
-
"debug_symbols": "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heRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nkNZG8JpLXRPKaSF4TyWsieU0kr4nk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",
|
|
1910
|
-
"verification_key": "
|
|
1908
|
+
"bytecode": "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",
|
|
1909
|
+
"debug_symbols": "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LFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMGSBUsWLFmwZMESJK+O5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkheA8lrIHkNJK+B5DWQvAaS10DyGkhe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JK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8iokr0LyKiSvQvIqJK9C8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbzmaNFAjpaW5GhpSY6WluRoaUmOlpbkaGlJjpaW5GhpSY6WluQQaSJNpIk0kSbSRJpIE2kiLUlL0pK0JC1JS9KStCQtSUvSirQirUgr0oq0Iq1IK9KKtCJtkbZIW6Qt0hZpi7RF2iJtkdbSkpwtLcnZ0pKcLS3J2dKSnC0tydnSkpwtLcnZ0pKcLS3JeSNtkDZIG6QN0gZpg7RB2iBtkDZIm6RN0iZpk7RJ2iRtkjZJm6RN0ow0I81IM9KMNCPNSDPSjDQjzUlz0pw0J81Jc9KcNCfNSXPSYMmEJROWTFgyYcmEJROWTFgyYcmEJROWTFgyYcmEJROWTFgyYcmEJROWTFgyYcmEJROWTFgyYcmEJROWTFgyYcmEJROWTFgyYcmEJROWTFgyYcmEJROWTFgyYcmEJROWTFgyYcmEJROWTFgyYcmEJQZLDJYYLDFYYrDEYInBEoMlBksMlhgsMVhisOQx7Ho4dfIx7Posz7Q4S1Ger6aPHyvK1eXjfcmjHJST0ij3mH5aX4ST1hfhpPVFOGl9EU5aX4ST1hfhpPVFOGl9EU5aX4STZqQZaUaakWakGWlOmpPmpDlpTpqT5qQ5aU6akxakBWlBWpAWpAVpQVqQFqQFaSJNpIk0kSbSRJpIE2kiTaQlaUlakpakJWlJWpKWpCVpSVqRVqQVaUVakVakFWlFWpFWpC3SFmmLtEXaIm2RtkhbpC3S+iKc9L4IJ70vwknvi3DS+yKc9L4IJ70vwknvi3DS+yKc9L4IJ/1G2iBtkDZIG6QN0gZpg7RB2iBtkDZJm6RN0iZpsMRhicMShyUOSxyWOCxxWOKwxGGJwxKHJQ5LHJY4LHFY4rDEYYnDEoclDkscljgscVjisMRhicMShyUOSxyWOCxxWOKwxGGJwxKHJQ5LHJY4LHFY4rDEYYnDEoclDkscljgscVjisMRhicMShyUOSxyWOCxxWOKwxGGJwxKHJQ5LHJY4LHFY4rDEYYnDEoclDkscljgscVjisMRhicMShyUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIliC5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK/5mHs9hCH5mHt9lkW5unx8j/Moz+866iwnpVGe33Wsswz+VpRJWZRrl4+512c5KCelUTplUIoyKYuStEHaIG2QNkgbpA3SBmmDtEHaIG2SNkmbpE3SJmmTtEnaJG2SNkkz0ow0I81IM9KMNCPNSDPSjDQnzUlz0pw0J81Jc9KcNCfNSQvSgrQgLUgL0oK0IC1IC9KiO+Ax9/osSTtZYvMsjfJIM53lkWaPfyvKpCzK1eXJkmc5KM+0dZZG6ZRn2vrHzz/9v9//9Y+///c//eF/f/qXv9//+F//9+f/+Nsf//Ln5x//9v/9z/4///7XP/7pT3/879/9z1//8h9/+M//++sffvenv/zH8f9+uh3/OZrjX4d+nuPf7v94/Pqv5vOf/uv9ROrP93OP//bzT3b8SfXz/Uzv/U/nP7+f6f35ftr2+OM4/lhx/2MeP2+9ZPrPufa/qNvPNY//70Sun6cffxX9V9N/nuv4K/FX+bOdP5jHXx13RePnHPuO3O9HnYsU6+bP8/yJxSLj56nzgNkEHz/74+9+tQv/+Me//eP/Bw==",
|
|
1910
|
+
"verification_key": "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"
|
|
1911
1911
|
},
|
|
1912
1912
|
{
|
|
1913
1913
|
"name": "verify_private_authwit",
|
|
@@ -3723,9 +3723,9 @@
|
|
|
3723
3723
|
}
|
|
3724
3724
|
}
|
|
3725
3725
|
},
|
|
3726
|
-
"bytecode": "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",
|
|
3727
|
-
"debug_symbols": "
|
|
3728
|
-
"verification_key": "
|
|
3726
|
+
"bytecode": "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cfrfKk7/W8Xpf6s4/W8Vp/+t4vS/VZz+t4rT/1Zx+t8qTv9bxel/qzj9bxWn/63i9L9VhRxaTv9bxel/qzj9bxWn/63i9L9VnP63itP/VnH63ypO/1vF6X+rOP1vFaf/reL0v1Wc/reK0/9WcfrfKk7/W8Xpf6s4/W8Vp/+t4vS/VZz+t4rT/1Zx+t8qTv9bxel/qzj9bxWn/63i9L9VnP63itP/Vj3DoeX0v1Wc/reK0/9WcfrfKk7/W8Xpf6s4/W8Vp/+t4vS/VZz+t4rT/1Zx+t8qTv9bxel/qzj9bxWn/63i9L9VnP63itP/VnH63ypO/1vF6X+rOP1vFaf/reL0v1Wc/reK0/9WcfrfKk7/W8Xpf6s4/W/VDg4tp/+t4vS/VZz+t4rT/1Zx+t8qTv9bxel/qzj9bxWn/63i9L9VnP63itP/VnH63ypO/1vF6X+rOP1vFaf/reL0v1Wc/reK0/9WcfrfKk7/W8Xpf6s4/W8Vp/+t4vS/VZz+t4rT/1Zx+t8qTv9bxel/q77n0HL63ypO/1vF6X+rOP1vFaf/reL0v1Wc/reK0/9WcfrfKk7/W8Xpf6s4/W8Vp/+t5vS/1Zz+t5rT/1Zz+t9qTv9bzel/qzn9bzWn/63m9L/VnP63mtP/VnP632pO/1vN6X+rOf1vNaf/reb0v9Wc/re6KoeW0/9Wc/rfak7/W83pf6s5/W81p/+t5vS/1Zz+t5rT/1Zz+t9qTv9bzel/qzn9bzWn/63m9L/VnP63mtP/VnP632pO/1vN6X+rOf1vNaf/reb0v9Wc/rea0/9Wc/rfak7/W83pf6s5/W81p/+t5vS/1R05tJz+t5rT/1Zz+t9qTv9bzel/qzn9bzWn/63m9L/VnP63mtP/VnP632pO/1vN6X+rOf1vNaf/reb0v9Wc/rea0/9Wc/rfak7/W83pf6s5/W81p/+t5vS/1Zz+t5rT/1Zz+t9qTv9bzel/qzn9bzWn/60exqHl9L/VnP63mtP/VnP632pO/1vN6X+rOf1vNaf/reb0v9Wc/rea0/9Wc/rfak7/W83pf6s5/W81p/+t5vS/1Zz+t5rT/1Zz+t9qTv9bzel/qzn9bzWn/63m9L/VnP63mtP/VnP632pO/1vN6X+rOf1vdR6HltP/VnP632pO/1vN6X+rOf1vNaf/reb0v9Wc/rea0/9Wc/rfak7/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",
|
|
3727
|
+
"debug_symbols": "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",
|
|
3728
|
+
"verification_key": "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"
|
|
3729
3729
|
},
|
|
3730
3730
|
{
|
|
3731
3731
|
"name": "process_message",
|
|
@@ -3975,8 +3975,8 @@
|
|
|
3975
3975
|
}
|
|
3976
3976
|
}
|
|
3977
3977
|
},
|
|
3978
|
-
"bytecode": "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",
|
|
3979
|
-
"debug_symbols": "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"
|
|
3978
|
+
"bytecode": "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",
|
|
3979
|
+
"debug_symbols": "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"
|
|
3980
3980
|
},
|
|
3981
3981
|
{
|
|
3982
3982
|
"name": "sync_private_state",
|
|
@@ -4133,8 +4133,8 @@
|
|
|
4133
4133
|
}
|
|
4134
4134
|
}
|
|
4135
4135
|
},
|
|
4136
|
-
"bytecode": "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",
|
|
4137
|
-
"debug_symbols": "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"
|
|
4136
|
+
"bytecode": "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",
|
|
4137
|
+
"debug_symbols": "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XjPPa+Z5zTyvmec187xmntfM85p5XjPPa+Z5zTyvmec187xmntfM85p5XjPPa+Z5zTyvmec187xmntfM85p5XjPPa+Z5zTyvmec187xmntfM85p5XjPPa+Z5zTyvmec181y1QrMedOT5RSWpJrWknmRJI8mTZlI6PB2eDk+Hp8PT4enwdHg6PB2ejpmOmY6ZjpmOI89nE1nSSPKkmbSCjjy/qCTVpJaUjpWOlY6VjpWOFQ4VFV1UkmpSS+pJljSSPGkmpaOko6SjpKOko6SjpKOko6SjpKOko6ajpqOmo6ajpqOmo6ajpqOmo6ajpaOlo6WjpaOlo6WjpaOlo6WjpaOno6ejp6Ono6ejp6Ono6ejp6Onw9Jh6bB0WDosHZYOS4elw9KhPD9rjR9JJelwTFFL6kmWNJI8aSatIOX5SSUpHZ4OT4enw9Ph6fB0eDpmOmY6ZjpmOmY6ZjpmOmY6ZjpmOlY6VjpWOlY6VjpWOlY6VjpWOlY4VLh0UUmqSS2pJ1nSSPKkmZSOko6SjpKOko6SjpKOko6SjpKOko6ajpqOmo6ajpqOmo6ajpqOmo6ajpaOlo6WjpaOlo6WjpaOlo6WjpaOno6ejp6Ono6ejp6Ono6ejp6Ong5Lh6XD0mHpsHRYOiwdlg5Lh6VjpGOkI/O8Z573zPOeed4zz3vmec8875nnPfO8Z573zPOeed4zz3vmec8875nnPfO8Z573zPOeed4zz3vmec8875nnPfO8Z573zPOeed4zz3vmec8875nnPfO8Z573zPOeed4zz3vmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5rllnlvmuWWeW+a5ZZ5b5vnIPB+Z5yPzfGSej8zzkXk+Ms9H5vnIPB+Z5yPzfGSej8zzkXk+Ms9H5vnIPB+Z5yPzfGSej8zz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"
|
|
4138
4138
|
},
|
|
4139
4139
|
{
|
|
4140
4140
|
"name": "public_dispatch",
|
|
@@ -4453,7 +4453,7 @@
|
|
|
4453
4453
|
},
|
|
4454
4454
|
"130": {
|
|
4455
4455
|
"path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/messages/discovery/private_events.nr",
|
|
4456
|
-
"source": "use crate::messages::{\n
|
|
4456
|
+
"source": "use crate::{\n event::event_interface::compute_private_serialized_event_commitment,\n messages::{\n encoding::MAX_MESSAGE_CONTENT_LEN, logs::event::decode_private_event_message,\n processing::enqueue_event_for_validation,\n },\n};\nuse protocol_types::{address::AztecAddress, traits::ToField};\n\npub unconstrained fn process_private_event_msg(\n contract_address: AztecAddress,\n recipient: AztecAddress,\n msg_metadata: u64,\n msg_content: BoundedVec<Field, MAX_MESSAGE_CONTENT_LEN>,\n tx_hash: Field,\n) {\n let (event_type_id, randomness, serialized_event) =\n decode_private_event_message(msg_metadata, msg_content);\n\n let event_commitment = compute_private_serialized_event_commitment(\n serialized_event,\n randomness,\n event_type_id.to_field(),\n );\n\n enqueue_event_for_validation(\n contract_address,\n event_type_id,\n serialized_event,\n event_commitment,\n tx_hash,\n recipient,\n );\n}\n"
|
|
4457
4457
|
},
|
|
4458
4458
|
"131": {
|
|
4459
4459
|
"path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/messages/discovery/private_notes.nr",
|
|
@@ -4473,7 +4473,7 @@
|
|
|
4473
4473
|
},
|
|
4474
4474
|
"139": {
|
|
4475
4475
|
"path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/messages/logs/event.nr",
|
|
4476
|
-
"source": "use crate::{\n event::{event_interface::EventInterface, event_selector::EventSelector},\n messages::{\n encoding::{encode_message, MAX_MESSAGE_CONTENT_LEN, MESSAGE_EXPANDED_METADATA_LEN},\n msg_type::PRIVATE_EVENT_MSG_TYPE_ID,\n },\n utils::array,\n};\nuse protocol_types::
|
|
4476
|
+
"source": "use crate::{\n event::{event_interface::EventInterface, event_selector::EventSelector},\n messages::{\n encoding::{encode_message, MAX_MESSAGE_CONTENT_LEN, MESSAGE_EXPANDED_METADATA_LEN},\n msg_type::PRIVATE_EVENT_MSG_TYPE_ID,\n },\n utils::array,\n};\nuse protocol_types::traits::{FromField, Serialize, ToField};\n\n/// The number of fields in a private event message content that are not the event's serialized representation\n/// (1 field for randomness).\npub(crate) global PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN: u32 = 1;\npub(crate) global PRIVATE_EVENT_MSG_PLAINTEXT_RANDOMNESS_INDEX: u32 = 0;\n\n/// The maximum length of the packed representation of an event's contents. This is limited by private log size,\n/// encryption overhead and extra fields in the message (e.g. message type id, randomness, etc.).\npub global MAX_EVENT_SERIALIZED_LEN: u32 =\n MAX_MESSAGE_CONTENT_LEN - PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN;\n\n/// Creates the plaintext for a private event message (i.e. one of type [PRIVATE_EVENT_MSG_TYPE_ID]).\n///\n/// This plaintext is meant to be decoded via [decode_private_event_message].\npub fn encode_private_event_message<Event>(\n event: Event,\n randomness: Field,\n ) -> [Field; PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN + <Event as Serialize>::N + MESSAGE_EXPANDED_METADATA_LEN]\nwhere\n Event: EventInterface + Serialize,\n{\n // We use `Serialize` because we want for events to be processable by off-chain actors, e.g. block explorers,\n // wallets and apps, without having to rely on contract invocation. If we used `Packable` we'd need to call utility\n // functions in order to unpack events, which would introduce a level of complexity we don't currently think is\n // worth the savings in DA (for public events) and proving time (when encrypting private event messages).\n let serialized_event = event.serialize();\n\n // If PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN is changed, causing the assertion below to fail, then the\n // encoding below must be updated as well.\n std::static_assert(\n PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN == 1,\n \"unexpected value for PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN\",\n );\n\n let mut msg_plaintext =\n [0; PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN + <Event as Serialize>::N];\n msg_plaintext[PRIVATE_EVENT_MSG_PLAINTEXT_RANDOMNESS_INDEX] = randomness;\n\n for i in 0..serialized_event.len() {\n msg_plaintext[PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN + i] = serialized_event[i];\n }\n\n // The event type id is stored in the message metadata\n encode_message(\n PRIVATE_EVENT_MSG_TYPE_ID,\n Event::get_event_type_id().to_field() as u64,\n msg_plaintext,\n )\n}\n\n/// Decodes the plaintext from a private event message (i.e. one of type [PRIVATE_EVENT_MSG_TYPE_ID]).\n///\n/// This plaintext is meant to have originated from [encode_private_event_message].\n///\n/// Note that while [encode_private_event_message] returns a fixed-size array, this function takes a [BoundedVec]\n/// instead. This is because when decoding we're typically processing runtime-sized plaintexts, more specifically, those\n/// that originate from [crate::messages::encryption::message_encryption::MessageEncryption::decrypt].\npub(crate) unconstrained fn decode_private_event_message(\n msg_metadata: u64,\n msg_content: BoundedVec<Field, MAX_MESSAGE_CONTENT_LEN>,\n) -> (EventSelector, Field, BoundedVec<Field, MAX_EVENT_SERIALIZED_LEN>) {\n // Private event messages contain the event type id in the metadata\n let event_type_id = EventSelector::from_field(msg_metadata as Field);\n\n assert(\n msg_content.len() > PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN,\n f\"Invalid private event message: all private event messages must have at least {PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN} fields\",\n );\n\n // If PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN is changed, causing the assertion below to fail, then the\n // destructuring of the private event message encoding below must be updated as well.\n std::static_assert(\n PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN == 1,\n \"unexpected value for PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN\",\n );\n\n let randomness = msg_content.get(PRIVATE_EVENT_MSG_PLAINTEXT_RANDOMNESS_INDEX);\n let serialized_event =\n array::subbvec(msg_content, PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN);\n\n (event_type_id, randomness, serialized_event)\n}\n\nmod test {\n use crate::{\n event::event_interface::EventInterface,\n messages::{\n encoding::decode_message,\n logs::event::{decode_private_event_message, encode_private_event_message},\n msg_type::PRIVATE_EVENT_MSG_TYPE_ID,\n },\n };\n use crate::test::mocks::mock_event::MockEvent;\n use protocol_types::traits::Serialize;\n\n global VALUE: Field = 7;\n global RANDOMNESS: Field = 10;\n\n #[test]\n unconstrained fn encode_decode() {\n let event = MockEvent::new(VALUE).build_event();\n\n let message_plaintext = encode_private_event_message(event, RANDOMNESS);\n\n let (msg_type_id, msg_metadata, msg_content) =\n decode_message(BoundedVec::from_array(message_plaintext));\n\n assert_eq(msg_type_id, PRIVATE_EVENT_MSG_TYPE_ID);\n\n let (event_type_id, randomness, serialized_event) =\n decode_private_event_message(msg_metadata, msg_content);\n\n assert_eq(event_type_id, MockEvent::get_event_type_id());\n assert_eq(randomness, RANDOMNESS);\n assert_eq(serialized_event, BoundedVec::from_array(event.serialize()));\n }\n}\n"
|
|
4477
4477
|
},
|
|
4478
4478
|
"141": {
|
|
4479
4479
|
"path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/messages/logs/note.nr",
|
|
@@ -4489,7 +4489,7 @@
|
|
|
4489
4489
|
},
|
|
4490
4490
|
"16": {
|
|
4491
4491
|
"path": "std/embedded_curve_ops.nr",
|
|
4492
|
-
"source": "use crate::cmp::Eq;\nuse crate::hash::Hash;\nuse crate::ops::arith::{Add, Neg, Sub};\n\n/// A point on the embedded elliptic curve\n/// By definition, the base field of the embedded curve is the scalar field of the proof system curve, i.e the Noir Field.\n/// x and y denotes the Weierstrass coordinates of the point, if is_infinite is false.\npub struct EmbeddedCurvePoint {\n pub x: Field,\n pub y: Field,\n pub is_infinite: bool,\n}\n\nimpl EmbeddedCurvePoint {\n /// Elliptic curve point doubling operation\n /// returns the doubled point of a point P, i.e P+P\n pub fn double(self) -> EmbeddedCurvePoint {\n embedded_curve_add(self, self)\n }\n\n /// Returns the null element of the curve; 'the point at infinity'\n pub fn point_at_infinity() -> EmbeddedCurvePoint {\n EmbeddedCurvePoint { x: 0, y: 0, is_infinite: true }\n }\n\n /// Returns the curve's generator point.\n pub fn generator() -> EmbeddedCurvePoint {\n // Generator point for the grumpkin curve (y^2 = x^3 - 17)\n EmbeddedCurvePoint {\n x: 1,\n y: 17631683881184975370165255887551781615748388533673675138860, // sqrt(-16)\n is_infinite: false,\n }\n }\n}\n\nimpl Add for EmbeddedCurvePoint {\n /// Adds two points P+Q, using the curve addition formula, and also handles point at infinity\n fn add(self, other: EmbeddedCurvePoint) -> EmbeddedCurvePoint {\n embedded_curve_add(self, other)\n }\n}\n\nimpl Sub for EmbeddedCurvePoint {\n /// Points subtraction operation, using addition and negation\n fn sub(self, other: EmbeddedCurvePoint) -> EmbeddedCurvePoint {\n self + other.neg()\n }\n}\n\nimpl Neg for EmbeddedCurvePoint {\n /// Negates a point P, i.e returns -P, by negating the y coordinate.\n /// If the point is at infinity, then the result is also at infinity.\n fn neg(self) -> EmbeddedCurvePoint {\n EmbeddedCurvePoint { x: self.x, y: -self.y, is_infinite: self.is_infinite }\n }\n}\n\nimpl Eq for EmbeddedCurvePoint {\n /// Checks whether two points are equal\n fn eq(self: Self, b: EmbeddedCurvePoint) -> bool {\n (self.is_infinite & b.is_infinite)\n | ((self.is_infinite == b.is_infinite) & (self.x == b.x) & (self.y == b.y))\n }\n}\n\nimpl Hash for EmbeddedCurvePoint {\n fn hash<H>(self, state: &mut H)\n where\n H: crate::hash::Hasher,\n {\n if self.is_infinite {\n self.is_infinite.hash(state);\n } else {\n self.x.hash(state);\n self.y.hash(state);\n }\n }\n}\n\n/// Scalar for the embedded curve represented as low and high limbs\n/// By definition, the scalar field of the embedded curve is base field of the proving system curve.\n/// It may not fit into a Field element, so it is represented with two Field elements; its low and high limbs.\npub struct EmbeddedCurveScalar {\n pub lo: Field,\n pub hi: Field,\n}\n\nimpl EmbeddedCurveScalar {\n pub fn new(lo: Field, hi: Field) -> Self {\n EmbeddedCurveScalar { lo, hi }\n }\n\n #[field(bn254)]\n pub fn from_field(scalar: Field) -> EmbeddedCurveScalar {\n let (a, b) = crate::field::bn254::decompose(scalar);\n EmbeddedCurveScalar { lo: a, hi: b }\n }\n\n //Bytes to scalar: take the first (after the specified offset) 16 bytes of the input as the lo value, and the next 16 bytes as the hi value\n #[field(bn254)]\n pub(crate) fn from_bytes(bytes: [u8; 64], offset: u32) -> EmbeddedCurveScalar {\n let mut v = 1;\n let mut lo = 0 as Field;\n let mut hi = 0 as Field;\n for i in 0..16 {\n lo = lo + (bytes[offset + 31 - i] as Field) * v;\n hi = hi + (bytes[offset + 15 - i] as Field) * v;\n v = v * 256;\n }\n let sig_s = crate::embedded_curve_ops::EmbeddedCurveScalar { lo, hi };\n sig_s\n }\n}\n\nimpl Eq for EmbeddedCurveScalar {\n fn eq(self, other: Self) -> bool {\n (other.hi == self.hi) & (other.lo == self.lo)\n }\n}\n\nimpl Hash for EmbeddedCurveScalar {\n fn hash<H>(self, state: &mut H)\n where\n H: crate::hash::Hasher,\n {\n self.hi.hash(state);\n self.lo.hash(state);\n }\n}\n\n// Computes a multi scalar multiplication over the embedded curve.\n// For bn254, We have Grumpkin and Baby JubJub.\n// For bls12-381, we have JubJub and Bandersnatch.\n//\n// The embedded curve being used is decided by the\n// underlying proof system.\n// docs:start:multi_scalar_mul\npub fn multi_scalar_mul<let N: u32>(\n points: [EmbeddedCurvePoint; N],\n scalars: [EmbeddedCurveScalar; N],\n) -> EmbeddedCurvePoint\n// docs:end:multi_scalar_mul\n{\n multi_scalar_mul_array_return(points, scalars, true)[0]\n}\n\n#[foreign(multi_scalar_mul)]\npub(crate) fn multi_scalar_mul_array_return<let N: u32>(\n points: [EmbeddedCurvePoint; N],\n scalars: [EmbeddedCurveScalar; N],\n predicate: bool,\n) -> [EmbeddedCurvePoint; 1] {}\n\n// docs:start:fixed_base_scalar_mul\npub fn fixed_base_scalar_mul(scalar: EmbeddedCurveScalar) -> EmbeddedCurvePoint\n// docs:end:fixed_base_scalar_mul\n{\n multi_scalar_mul([EmbeddedCurvePoint::generator()], [scalar])\n}\n\n/// This function only assumes that the points are on the curve\n/// It handles corner cases around the infinity point causing some overhead compared to embedded_curve_add_not_nul and embedded_curve_add_unsafe\n// docs:start:embedded_curve_add\npub fn embedded_curve_add(\n point1: EmbeddedCurvePoint,\n point2: EmbeddedCurvePoint,\n) -> EmbeddedCurvePoint {\n // docs:end:embedded_curve_add\n if crate::runtime::is_unconstrained() {\n // `embedded_curve_add_unsafe` requires the inputs not to be the infinity point, so we check it here.\n // This is because `embedded_curve_add_unsafe` uses the `embedded_curve_add` opcode.\n // For efficiency, the backend does not check the inputs for the infinity point, but it assumes that they are not the infinity point\n // so that it can apply the ec addition formula directly.\n if point1.is_infinite {\n point2\n } else if point2.is_infinite {\n point1\n } else {\n embedded_curve_add_unsafe(point1, point2)\n }\n } else {\n // In a constrained context, we also need to check the inputs are not the infinity point because we also use `embedded_curve_add_unsafe`\n // However we also need to identify the case where the two inputs are the same, because then\n // the addition formula does not work and we need to use the doubling formula instead.\n // In unconstrained context, we can check directly if the input values are the same when solving the opcode, so it is not an issue.\n\n // x_coordinates_match is true if both abscissae are the same\n let x_coordinates_match = point1.x == point2.x;\n // y_coordinates_match is true if both ordinates are the same\n let y_coordinates_match = point1.y == point2.y;\n // double_predicate is true if both abscissae and ordinates are the same\n let double_predicate = (x_coordinates_match & y_coordinates_match);\n // If the abscissae are the same, but not the ordinates, then one point is the opposite of the other\n let infinity_predicate = (x_coordinates_match & !y_coordinates_match);\n\n // `embedded_curve_add_unsafe` would not perform doubling, even if the inputs point1 and point2 are the same, because it cannot know this without adding some logic (and some constraints)\n // However we did this logic when we computed `double_predicate`, so we set the result to 2*point1 if point1 and point2 are the same\n let mut result = if double_predicate {\n // `embedded_curve_add_unsafe` is doing a doubling if the input is the same variable, because in this case it is guaranteed (at 'compile time') that the input is the same.\n embedded_curve_add_unsafe(point1, point1)\n } else {\n let point1_1 = EmbeddedCurvePoint {\n x: point1.x + (x_coordinates_match as Field),\n y: point1.y,\n is_infinite: false,\n };\n let point2_1 = EmbeddedCurvePoint { x: point2.x, y: point2.y, is_infinite: false };\n // point1_1 is guaranteed to have a different abscissa than point2:\n // - if x_coordinates_match is 0, that means point1.x != point2.x, and point1_1.x = point1.x + 0\n // - if x_coordinates_match is 1, that means point1.x = point2.x, but point1_1.x = point1.x + 1 in this case\n // Because the abscissa is different, the addition formula is guaranteed to succeed, so we can safely use `embedded_curve_add_unsafe`\n // Note that this computation may be garbage: if x_coordinates_match is 1, or if one of the input is the point at infinity.\n // therefore we only want to do this if we need the result, otherwise it needs to be eliminated as a dead instruction, lest we want the circuit to fail.\n embedded_curve_add_unsafe(point1_1, point2_1)\n };\n\n // Same logic as above for unconstrained context, we set the proper result when one of the inputs is the infinity point\n if point1.is_infinite {\n result = point2;\n }\n if point2.is_infinite {\n result = point1;\n }\n\n // Finally, we set the is_infinity flag of the result:\n // Opposite points should sum into the infinity point, however, if one of them is point at infinity, their coordinates are not meaningful\n // so we should not use the fact that the inputs are opposite in this case:\n let mut result_is_infinity =\n infinity_predicate & (!point1.is_infinite & !point2.is_infinite);\n // However, if both of them are at infinity, then the result is also at infinity\n result.is_infinite = result_is_infinity | (point1.is_infinite & point2.is_infinite);\n result\n }\n}\n\n#[foreign(embedded_curve_add)]\nfn embedded_curve_add_array_return(\n _point1: EmbeddedCurvePoint,\n _point2: EmbeddedCurvePoint,\n _predicate: bool,\n) -> [EmbeddedCurvePoint; 1] {}\n\n/// This function assumes that:\n/// The points are on the curve, and\n/// The points don't share an x-coordinate, and\n/// Neither point is the infinity point.\n/// If it is used with correct input, the function ensures the correct non-zero result is returned.\n/// Except for points on the curve, the other assumptions are checked by the function. It will cause assertion failure if they are not respected.\npub fn embedded_curve_add_not_nul(\n point1: EmbeddedCurvePoint,\n point2: EmbeddedCurvePoint,\n) -> EmbeddedCurvePoint {\n assert(point1.x != point2.x);\n assert(!point1.is_infinite);\n assert(!point2.is_infinite);\n // Ensure is_infinite is comptime\n let point1_1 = EmbeddedCurvePoint { x: point1.x, y: point1.y, is_infinite: false };\n let point2_1 = EmbeddedCurvePoint { x: point2.x, y: point2.y, is_infinite: false };\n embedded_curve_add_unsafe(point1_1, point2_1)\n}\n\n/// Unsafe ec addition\n/// If the inputs are the same, it will perform a doubling, but only if point1 and point2 are the same variable.\n/// If they have the same value but are different variables, the result will be incorrect because in this case\n/// it assumes (but does not check) that the points' x-coordinates are not equal.\n/// It also assumes neither point is the infinity point.\npub fn embedded_curve_add_unsafe(\n point1: EmbeddedCurvePoint,\n point2: EmbeddedCurvePoint,\n) -> EmbeddedCurvePoint {\n embedded_curve_add_array_return(point1, point2, true)[0]\n}\n"
|
|
4492
|
+
"source": "use crate::cmp::Eq;\nuse crate::hash::Hash;\nuse crate::ops::arith::{Add, Neg, Sub};\n\n/// A point on the embedded elliptic curve\n/// By definition, the base field of the embedded curve is the scalar field of the proof system curve, i.e the Noir Field.\n/// x and y denotes the Weierstrass coordinates of the point, if is_infinite is false.\npub struct EmbeddedCurvePoint {\n pub x: Field,\n pub y: Field,\n pub is_infinite: bool,\n}\n\nimpl EmbeddedCurvePoint {\n /// Elliptic curve point doubling operation\n /// returns the doubled point of a point P, i.e P+P\n pub fn double(self) -> EmbeddedCurvePoint {\n embedded_curve_add(self, self)\n }\n\n /// Returns the null element of the curve; 'the point at infinity'\n pub fn point_at_infinity() -> EmbeddedCurvePoint {\n EmbeddedCurvePoint { x: 0, y: 0, is_infinite: true }\n }\n\n /// Returns the curve's generator point.\n pub fn generator() -> EmbeddedCurvePoint {\n // Generator point for the grumpkin curve (y^2 = x^3 - 17)\n EmbeddedCurvePoint {\n x: 1,\n y: 17631683881184975370165255887551781615748388533673675138860, // sqrt(-16)\n is_infinite: false,\n }\n }\n}\n\nimpl Add for EmbeddedCurvePoint {\n /// Adds two points P+Q, using the curve addition formula, and also handles point at infinity\n fn add(self, other: EmbeddedCurvePoint) -> EmbeddedCurvePoint {\n embedded_curve_add(self, other)\n }\n}\n\nimpl Sub for EmbeddedCurvePoint {\n /// Points subtraction operation, using addition and negation\n fn sub(self, other: EmbeddedCurvePoint) -> EmbeddedCurvePoint {\n self + other.neg()\n }\n}\n\nimpl Neg for EmbeddedCurvePoint {\n /// Negates a point P, i.e returns -P, by negating the y coordinate.\n /// If the point is at infinity, then the result is also at infinity.\n fn neg(self) -> EmbeddedCurvePoint {\n EmbeddedCurvePoint { x: self.x, y: -self.y, is_infinite: self.is_infinite }\n }\n}\n\nimpl Eq for EmbeddedCurvePoint {\n /// Checks whether two points are equal\n fn eq(self: Self, b: EmbeddedCurvePoint) -> bool {\n (self.is_infinite & b.is_infinite)\n | ((self.is_infinite == b.is_infinite) & (self.x == b.x) & (self.y == b.y))\n }\n}\n\nimpl Hash for EmbeddedCurvePoint {\n fn hash<H>(self, state: &mut H)\n where\n H: crate::hash::Hasher,\n {\n if self.is_infinite {\n self.is_infinite.hash(state);\n } else {\n self.x.hash(state);\n self.y.hash(state);\n }\n }\n}\n\n/// Scalar for the embedded curve represented as low and high limbs\n/// By definition, the scalar field of the embedded curve is base field of the proving system curve.\n/// It may not fit into a Field element, so it is represented with two Field elements; its low and high limbs.\npub struct EmbeddedCurveScalar {\n pub lo: Field,\n pub hi: Field,\n}\n\nimpl EmbeddedCurveScalar {\n pub fn new(lo: Field, hi: Field) -> Self {\n EmbeddedCurveScalar { lo, hi }\n }\n\n #[field(bn254)]\n pub fn from_field(scalar: Field) -> EmbeddedCurveScalar {\n let (a, b) = crate::field::bn254::decompose(scalar);\n EmbeddedCurveScalar { lo: a, hi: b }\n }\n\n //Bytes to scalar: take the first (after the specified offset) 16 bytes of the input as the lo value, and the next 16 bytes as the hi value\n #[field(bn254)]\n pub(crate) fn from_bytes(bytes: [u8; 64], offset: u32) -> EmbeddedCurveScalar {\n let mut v = 1;\n let mut lo = 0 as Field;\n let mut hi = 0 as Field;\n for i in 0..16 {\n lo = lo + (bytes[offset + 31 - i] as Field) * v;\n hi = hi + (bytes[offset + 15 - i] as Field) * v;\n v = v * 256;\n }\n let sig_s = crate::embedded_curve_ops::EmbeddedCurveScalar { lo, hi };\n sig_s\n }\n}\n\nimpl Eq for EmbeddedCurveScalar {\n fn eq(self, other: Self) -> bool {\n (other.hi == self.hi) & (other.lo == self.lo)\n }\n}\n\nimpl Hash for EmbeddedCurveScalar {\n fn hash<H>(self, state: &mut H)\n where\n H: crate::hash::Hasher,\n {\n self.hi.hash(state);\n self.lo.hash(state);\n }\n}\n\n// Computes a multi scalar multiplication over the embedded curve.\n// For bn254, We have Grumpkin and Baby JubJub.\n// For bls12-381, we have JubJub and Bandersnatch.\n//\n// The embedded curve being used is decided by the\n// underlying proof system.\n// docs:start:multi_scalar_mul\npub fn multi_scalar_mul<let N: u32>(\n points: [EmbeddedCurvePoint; N],\n scalars: [EmbeddedCurveScalar; N],\n) -> EmbeddedCurvePoint\n// docs:end:multi_scalar_mul\n{\n multi_scalar_mul_array_return(points, scalars, true)[0]\n}\n\n#[foreign(multi_scalar_mul)]\npub(crate) fn multi_scalar_mul_array_return<let N: u32>(\n points: [EmbeddedCurvePoint; N],\n scalars: [EmbeddedCurveScalar; N],\n predicate: bool,\n) -> [EmbeddedCurvePoint; 1] {}\n\n// docs:start:fixed_base_scalar_mul\npub fn fixed_base_scalar_mul(scalar: EmbeddedCurveScalar) -> EmbeddedCurvePoint\n// docs:end:fixed_base_scalar_mul\n{\n multi_scalar_mul([EmbeddedCurvePoint::generator()], [scalar])\n}\n\n/// This function assumes that the points are on the curve\n// docs:start:embedded_curve_add\npub fn embedded_curve_add(\n point1: EmbeddedCurvePoint,\n point2: EmbeddedCurvePoint,\n) -> EmbeddedCurvePoint {\n // docs:end:embedded_curve_add\n if crate::runtime::is_unconstrained() {\n // avoid calling the black box function for trivial cases\n if point1.is_infinite {\n point2\n } else if point2.is_infinite {\n point1\n } else {\n embedded_curve_add_inner(point1, point2)\n }\n } else {\n embedded_curve_add_inner(point1, point2)\n }\n}\n\n#[foreign(embedded_curve_add)]\nfn embedded_curve_add_array_return(\n _point1: EmbeddedCurvePoint,\n _point2: EmbeddedCurvePoint,\n _predicate: bool,\n) -> [EmbeddedCurvePoint; 1] {}\n\n/// EC addition wrapper for the foreign function\nfn embedded_curve_add_inner(\n point1: EmbeddedCurvePoint,\n point2: EmbeddedCurvePoint,\n) -> EmbeddedCurvePoint {\n embedded_curve_add_array_return(point1, point2, true)[0]\n}\n"
|
|
4493
4493
|
},
|
|
4494
4494
|
"169": {
|
|
4495
4495
|
"path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/oracle/auth_witness.nr",
|
|
@@ -4521,7 +4521,7 @@
|
|
|
4521
4521
|
},
|
|
4522
4522
|
"18": {
|
|
4523
4523
|
"path": "std/field/mod.nr",
|
|
4524
|
-
"source": "pub mod bn254;\nuse crate::{runtime::is_unconstrained, static_assert};\nuse bn254::lt as bn254_lt;\n\nimpl Field {\n /// Asserts that `self` can be represented in `bit_size` bits.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^{bit_size}`.\n // docs:start:assert_max_bit_size\n pub fn assert_max_bit_size<let BIT_SIZE: u32>(self) {\n // docs:end:assert_max_bit_size\n static_assert(\n BIT_SIZE < modulus_num_bits() as u32,\n \"BIT_SIZE must be less than modulus_num_bits\",\n );\n __assert_max_bit_size(self, BIT_SIZE);\n }\n\n /// Decomposes `self` into its little endian bit decomposition as a `[u1; N]` array.\n /// This slice will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// The bit decomposition returned is canonical and is guaranteed to not overflow the modulus.\n // docs:start:to_le_bits\n pub fn to_le_bits<let N: u32>(self: Self) -> [u1; N] {\n // docs:end:to_le_bits\n let bits = __to_le_bits(self);\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_le_bits();\n assert(bits.len() <= p.len());\n let mut ok = bits.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bits[N - 1 - i] != p[N - 1 - i]) {\n assert(p[N - 1 - i] == 1);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bits\n }\n\n /// Decomposes `self` into its big endian bit decomposition as a `[u1; N]` array.\n /// This array will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// The bit decomposition returned is canonical and is guaranteed to not overflow the modulus.\n // docs:start:to_be_bits\n pub fn to_be_bits<let N: u32>(self: Self) -> [u1; N] {\n // docs:end:to_be_bits\n let bits = __to_be_bits(self);\n\n if !is_unconstrained() {\n // Ensure that the decomposition does not overflow the modulus\n let p = modulus_be_bits();\n assert(bits.len() <= p.len());\n let mut ok = bits.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bits[i] != p[i]) {\n assert(p[i] == 1);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bits\n }\n\n /// Decomposes `self` into its little endian byte decomposition as a `[u8;N]` array\n /// This array will be zero padded should not all bytes be necessary to represent `self`.\n ///\n /// # Failures\n /// The length N of the array must be big enough to contain all the bytes of the 'self',\n /// and no more than the number of bytes required to represent the field modulus\n ///\n /// # Safety\n /// The result is ensured to be the canonical decomposition of the field element\n // docs:start:to_le_bytes\n pub fn to_le_bytes<let N: u32>(self: Self) -> [u8; N] {\n // docs:end:to_le_bytes\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n // Compute the byte decomposition\n let bytes = self.to_le_radix(256);\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_le_bytes();\n assert(bytes.len() <= p.len());\n let mut ok = bytes.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bytes[N - 1 - i] != p[N - 1 - i]) {\n assert(bytes[N - 1 - i] < p[N - 1 - i]);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bytes\n }\n\n /// Decomposes `self` into its big endian byte decomposition as a `[u8;N]` array of length required to represent the field modulus\n /// This array will be zero padded should not all bytes be necessary to represent `self`.\n ///\n /// # Failures\n /// The length N of the array must be big enough to contain all the bytes of the 'self',\n /// and no more than the number of bytes required to represent the field modulus\n ///\n /// # Safety\n /// The result is ensured to be the canonical decomposition of the field element\n // docs:start:to_be_bytes\n pub fn to_be_bytes<let N: u32>(self: Self) -> [u8; N] {\n // docs:end:to_be_bytes\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n // Compute the byte decomposition\n let bytes = self.to_be_radix(256);\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_be_bytes();\n assert(bytes.len() <= p.len());\n let mut ok = bytes.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bytes[i] != p[i]) {\n assert(bytes[i] < p[i]);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bytes\n }\n\n fn to_le_radix<let N: u32>(self: Self, radix: u32) -> [u8; N] {\n // Brillig does not need an immediate radix\n if !crate::runtime::is_unconstrained() {\n static_assert(1 < radix, \"radix must be greater than 1\");\n static_assert(radix <= 256, \"radix must be less than or equal to 256\");\n static_assert(radix & (radix - 1) == 0, \"radix must be a power of 2\");\n }\n __to_le_radix(self, radix)\n }\n\n fn to_be_radix<let N: u32>(self: Self, radix: u32) -> [u8; N] {\n // Brillig does not need an immediate radix\n if !crate::runtime::is_unconstrained() {\n static_assert(1 < radix, \"radix must be greater than 1\");\n static_assert(radix <= 256, \"radix must be less than or equal to 256\");\n static_assert(radix & (radix - 1) == 0, \"radix must be a power of 2\");\n }\n __to_be_radix(self, radix)\n }\n\n // Returns self to the power of the given exponent value.\n // Caution: we assume the exponent fits into 32 bits\n // using a bigger bit size impacts negatively the performance and should be done only if the exponent does not fit in 32 bits\n pub fn pow_32(self, exponent: Field) -> Field {\n let mut r: Field = 1;\n let b: [u1; 32] = exponent.to_le_bits();\n\n for i in 1..33 {\n r *= r;\n r = (b[32 - i] as Field) * (r * self) + (1 - b[32 - i] as Field) * r;\n }\n r\n }\n\n // Parity of (prime) Field element, i.e. sgn0(x mod p) = 0 if x `elem` {0, ..., p-1} is even, otherwise sgn0(x mod p) = 1.\n pub fn sgn0(self) -> u1 {\n self as u1\n }\n\n pub fn lt(self, another: Field) -> bool {\n if crate::compat::is_bn254() {\n bn254_lt(self, another)\n } else {\n lt_fallback(self, another)\n }\n }\n\n /// Convert a little endian byte array to a field element.\n /// If the provided byte array overflows the field modulus then the Field will silently wrap around.\n pub fn from_le_bytes<let N: u32>(bytes: [u8; N]) -> Field {\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bytes[i] as Field) * v;\n v = v * 256;\n }\n result\n }\n\n /// Convert a big endian byte array to a field element.\n /// If the provided byte array overflows the field modulus then the Field will silently wrap around.\n pub fn from_be_bytes<let N: u32>(bytes: [u8; N]) -> Field {\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bytes[N - 1 - i] as Field) * v;\n v = v * 256;\n }\n result\n }\n}\n\n#[builtin(apply_range_constraint)]\nfn __assert_max_bit_size(value: Field, bit_size: u32) {}\n\n// `_radix` must be less than 256\n#[builtin(to_le_radix)]\nfn __to_le_radix<let N: u32>(value: Field, radix: u32) -> [u8; N] {}\n\n// `_radix` must be less than 256\n#[builtin(to_be_radix)]\nfn __to_be_radix<let N: u32>(value: Field, radix: u32) -> [u8; N] {}\n\n/// Decomposes `self` into its little endian bit decomposition as a `[u1; N]` array.\n/// This slice will be zero padded should not all bits be necessary to represent `self`.\n///\n/// # Failures\n/// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n/// be able to represent the original `Field`.\n///\n/// # Safety\n/// Values of `N` equal to or greater than the number of bits necessary to represent the `Field` modulus\n/// (e.g. 254 for the BN254 field) allow for multiple bit decompositions. This is due to how the `Field` will\n/// wrap around due to overflow when verifying the decomposition.\n#[builtin(to_le_bits)]\nfn __to_le_bits<let N: u32>(value: Field) -> [u1; N] {}\n\n/// Decomposes `self` into its big endian bit decomposition as a `[u1; N]` array.\n/// This array will be zero padded should not all bits be necessary to represent `self`.\n///\n/// # Failures\n/// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting slice will not\n/// be able to represent the original `Field`.\n///\n/// # Safety\n/// Values of `N` equal to or greater than the number of bits necessary to represent the `Field` modulus\n/// (e.g. 254 for the BN254 field) allow for multiple bit decompositions. This is due to how the `Field` will\n/// wrap around due to overflow when verifying the decomposition.\n#[builtin(to_be_bits)]\nfn __to_be_bits<let N: u32>(value: Field) -> [u1; N] {}\n\n#[builtin(modulus_num_bits)]\npub comptime fn modulus_num_bits() -> u64 {}\n\n#[builtin(modulus_be_bits)]\npub comptime fn modulus_be_bits() -> [u1] {}\n\n#[builtin(modulus_le_bits)]\npub comptime fn modulus_le_bits() -> [u1] {}\n\n#[builtin(modulus_be_bytes)]\npub comptime fn modulus_be_bytes() -> [u8] {}\n\n#[builtin(modulus_le_bytes)]\npub comptime fn modulus_le_bytes() -> [u8] {}\n\n/// An unconstrained only built in to efficiently compare fields.\n#[builtin(field_less_than)]\nunconstrained fn __field_less_than(x: Field, y: Field) -> bool {}\n\npub(crate) unconstrained fn field_less_than(x: Field, y: Field) -> bool {\n __field_less_than(x, y)\n}\n\n// Convert a 32 byte array to a field element by modding\npub fn bytes32_to_field(bytes32: [u8; 32]) -> Field {\n // Convert it to a field element\n let mut v = 1;\n let mut high = 0 as Field;\n let mut low = 0 as Field;\n\n for i in 0..16 {\n high = high + (bytes32[15 - i] as Field) * v;\n low = low + (bytes32[16 + 15 - i] as Field) * v;\n v = v * 256;\n }\n // Abuse that a % p + b % p = (a + b) % p and that low < p\n low + high * v\n}\n\nfn lt_fallback(x: Field, y: Field) -> bool {\n if is_unconstrained() {\n // Safety: unconstrained context\n unsafe {\n field_less_than(x, y)\n }\n } else {\n let x_bytes: [u8; 32] = x.to_le_bytes();\n let y_bytes: [u8; 32] = y.to_le_bytes();\n let mut x_is_lt = false;\n let mut done = false;\n for i in 0..32 {\n if (!done) {\n let x_byte = x_bytes[32 - 1 - i] as u8;\n let y_byte = y_bytes[32 - 1 - i] as u8;\n let bytes_match = x_byte == y_byte;\n if !bytes_match {\n x_is_lt = x_byte < y_byte;\n done = true;\n }\n }\n }\n x_is_lt\n }\n}\n\nmod tests {\n use crate::{panic::panic, runtime, static_assert};\n use super::{\n field_less_than, modulus_be_bits, modulus_be_bytes, modulus_le_bits, modulus_le_bytes,\n };\n\n #[test]\n // docs:start:to_be_bits_example\n fn test_to_be_bits() {\n let field = 2;\n let bits: [u1; 8] = field.to_be_bits();\n assert_eq(bits, [0, 0, 0, 0, 0, 0, 1, 0]);\n }\n // docs:end:to_be_bits_example\n\n #[test]\n // docs:start:to_le_bits_example\n fn test_to_le_bits() {\n let field = 2;\n let bits: [u1; 8] = field.to_le_bits();\n assert_eq(bits, [0, 1, 0, 0, 0, 0, 0, 0]);\n }\n // docs:end:to_le_bits_example\n\n #[test]\n // docs:start:to_be_bytes_example\n fn test_to_be_bytes() {\n let field = 2;\n let bytes: [u8; 8] = field.to_be_bytes();\n assert_eq(bytes, [0, 0, 0, 0, 0, 0, 0, 2]);\n assert_eq(Field::from_be_bytes::<8>(bytes), field);\n }\n // docs:end:to_be_bytes_example\n\n #[test]\n // docs:start:to_le_bytes_example\n fn test_to_le_bytes() {\n let field = 2;\n let bytes: [u8; 8] = field.to_le_bytes();\n assert_eq(bytes, [2, 0, 0, 0, 0, 0, 0, 0]);\n assert_eq(Field::from_le_bytes::<8>(bytes), field);\n }\n // docs:end:to_le_bytes_example\n\n #[test]\n // docs:start:to_be_radix_example\n fn test_to_be_radix() {\n // 259, in base 256, big endian, is [1, 3].\n // i.e. 3 * 256^0 + 1 * 256^1\n let field = 259;\n\n // The radix (in this example, 256) must be a power of 2.\n // The length of the returned byte array can be specified to be\n // >= the amount of space needed.\n let bytes: [u8; 8] = field.to_be_radix(256);\n assert_eq(bytes, [0, 0, 0, 0, 0, 0, 1, 3]);\n assert_eq(Field::from_be_bytes::<8>(bytes), field);\n }\n // docs:end:to_be_radix_example\n\n #[test]\n // docs:start:to_le_radix_example\n fn test_to_le_radix() {\n // 259, in base 256, little endian, is [3, 1].\n // i.e. 3 * 256^0 + 1 * 256^1\n let field = 259;\n\n // The radix (in this example, 256) must be a power of 2.\n // The length of the returned byte array can be specified to be\n // >= the amount of space needed.\n let bytes: [u8; 8] = field.to_le_radix(256);\n assert_eq(bytes, [3, 1, 0, 0, 0, 0, 0, 0]);\n assert_eq(Field::from_le_bytes::<8>(bytes), field);\n }\n // docs:end:to_le_radix_example\n\n #[test(should_fail_with = \"radix must be greater than 1\")]\n fn test_to_le_radix_1() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(1);\n } else {\n panic(f\"radix must be greater than 1\");\n }\n }\n\n // Updated test to account for Brillig restriction that radix must be greater than 2\n #[test(should_fail_with = \"radix must be greater than 1\")]\n fn test_to_le_radix_brillig_1() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 1;\n let _: [u8; 8] = field.to_le_radix(1);\n } else {\n panic(f\"radix must be greater than 1\");\n }\n }\n\n #[test(should_fail_with = \"radix must be a power of 2\")]\n fn test_to_le_radix_3() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(3);\n } else {\n panic(f\"radix must be a power of 2\");\n }\n }\n\n #[test]\n fn test_to_le_radix_brillig_3() {\n // this test should only fail in constrained mode\n if runtime::is_unconstrained() {\n let field = 1;\n let out: [u8; 8] = field.to_le_radix(3);\n let mut expected = [0; 8];\n expected[0] = 1;\n assert(out == expected, \"unexpected result\");\n }\n }\n\n #[test(should_fail_with = \"radix must be less than or equal to 256\")]\n fn test_to_le_radix_512() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(512);\n } else {\n panic(f\"radix must be less than or equal to 256\")\n }\n }\n\n #[test(should_fail_with = \"Field failed to decompose into specified 16 limbs\")]\n unconstrained fn not_enough_limbs_brillig() {\n let _: [u8; 16] = 0x100000000000000000000000000000000.to_le_bytes();\n }\n\n #[test(should_fail_with = \"Field failed to decompose into specified 16 limbs\")]\n fn not_enough_limbs() {\n let _: [u8; 16] = 0x100000000000000000000000000000000.to_le_bytes();\n }\n\n #[test]\n unconstrained fn test_field_less_than() {\n assert(field_less_than(0, 1));\n assert(field_less_than(0, 0x100));\n assert(field_less_than(0x100, 0 - 1));\n assert(!field_less_than(0 - 1, 0));\n }\n\n #[test]\n unconstrained fn test_large_field_values_unconstrained() {\n let large_field = 0xffffffffffffffff;\n\n let bits: [u1; 64] = large_field.to_le_bits();\n assert_eq(bits[0], 1);\n\n let bytes: [u8; 8] = large_field.to_le_bytes();\n assert_eq(Field::from_le_bytes::<8>(bytes), large_field);\n\n let radix_bytes: [u8; 8] = large_field.to_le_radix(256);\n assert_eq(Field::from_le_bytes::<8>(radix_bytes), large_field);\n }\n\n #[test]\n fn test_large_field_values() {\n let large_val = 0xffffffffffffffff;\n\n let bits: [u1; 64] = large_val.to_le_bits();\n assert_eq(bits[0], 1);\n\n let bytes: [u8; 8] = large_val.to_le_bytes();\n assert_eq(Field::from_le_bytes::<8>(bytes), large_val);\n\n let radix_bytes: [u8; 8] = large_val.to_le_radix(256);\n assert_eq(Field::from_le_bytes::<8>(radix_bytes), large_val);\n }\n\n #[test]\n fn test_decomposition_edge_cases() {\n let zero_bits: [u1; 8] = 0.to_le_bits();\n assert_eq(zero_bits, [0; 8]);\n\n let zero_bytes: [u8; 8] = 0.to_le_bytes();\n assert_eq(zero_bytes, [0; 8]);\n\n let one_bits: [u1; 8] = 1.to_le_bits();\n let expected: [u1; 8] = [1, 0, 0, 0, 0, 0, 0, 0];\n assert_eq(one_bits, expected);\n\n let pow2_bits: [u1; 8] = 4.to_le_bits();\n let expected: [u1; 8] = [0, 0, 1, 0, 0, 0, 0, 0];\n assert_eq(pow2_bits, expected);\n }\n\n #[test]\n fn test_pow_32() {\n assert_eq(2.pow_32(3), 8);\n assert_eq(3.pow_32(2), 9);\n assert_eq(5.pow_32(0), 1);\n assert_eq(7.pow_32(1), 7);\n\n assert_eq(2.pow_32(10), 1024);\n\n assert_eq(0.pow_32(5), 0);\n assert_eq(0.pow_32(0), 1);\n\n assert_eq(1.pow_32(100), 1);\n }\n\n #[test]\n fn test_sgn0() {\n assert_eq(0.sgn0(), 0);\n assert_eq(2.sgn0(), 0);\n assert_eq(4.sgn0(), 0);\n assert_eq(100.sgn0(), 0);\n\n assert_eq(1.sgn0(), 1);\n assert_eq(3.sgn0(), 1);\n assert_eq(5.sgn0(), 1);\n assert_eq(101.sgn0(), 1);\n }\n\n #[test(should_fail_with = \"Field failed to decompose into specified 8 limbs\")]\n fn test_bit_decomposition_overflow() {\n // 8 bits can't represent large field values\n let large_val = 0x1000000000000000;\n let _: [u1; 8] = large_val.to_le_bits();\n }\n\n #[test(should_fail_with = \"Field failed to decompose into specified 4 limbs\")]\n fn test_byte_decomposition_overflow() {\n // 4 bytes can't represent large field values\n let large_val = 0x1000000000000000;\n let _: [u8; 4] = large_val.to_le_bytes();\n }\n\n #[test]\n fn test_to_from_be_bytes_bn254_edge_cases() {\n if crate::compat::is_bn254() {\n // checking that decrementing this byte produces the expected 32 BE bytes for (modulus - 1)\n let mut p_minus_1_bytes: [u8; 32] = modulus_be_bytes().as_array();\n assert(p_minus_1_bytes[32 - 1] > 0);\n p_minus_1_bytes[32 - 1] -= 1;\n\n let p_minus_1 = Field::from_be_bytes::<32>(p_minus_1_bytes);\n assert_eq(p_minus_1 + 1, 0);\n\n // checking that converting (modulus - 1) from and then to 32 BE bytes produces the same bytes\n let p_minus_1_converted_bytes: [u8; 32] = p_minus_1.to_be_bytes();\n assert_eq(p_minus_1_converted_bytes, p_minus_1_bytes);\n\n // checking that incrementing this byte produces 32 BE bytes for (modulus + 1)\n let mut p_plus_1_bytes: [u8; 32] = modulus_be_bytes().as_array();\n assert(p_plus_1_bytes[32 - 1] < 255);\n p_plus_1_bytes[32 - 1] += 1;\n\n let p_plus_1 = Field::from_be_bytes::<32>(p_plus_1_bytes);\n assert_eq(p_plus_1, 1);\n\n // checking that converting p_plus_1 to 32 BE bytes produces the same\n // byte set to 1 as p_plus_1_bytes and otherwise zeroes\n let mut p_plus_1_converted_bytes: [u8; 32] = p_plus_1.to_be_bytes();\n assert_eq(p_plus_1_converted_bytes[32 - 1], 1);\n p_plus_1_converted_bytes[32 - 1] = 0;\n assert_eq(p_plus_1_converted_bytes, [0; 32]);\n\n // checking that Field::from_be_bytes::<32> on the Field modulus produces 0\n assert_eq(modulus_be_bytes().len(), 32);\n let p = Field::from_be_bytes::<32>(modulus_be_bytes().as_array());\n assert_eq(p, 0);\n\n // checking that converting 0 to 32 BE bytes produces 32 zeroes\n let p_bytes: [u8; 32] = 0.to_be_bytes();\n assert_eq(p_bytes, [0; 32]);\n }\n }\n\n #[test]\n fn test_to_from_le_bytes_bn254_edge_cases() {\n if crate::compat::is_bn254() {\n // checking that decrementing this byte produces the expected 32 LE bytes for (modulus - 1)\n let mut p_minus_1_bytes: [u8; 32] = modulus_le_bytes().as_array();\n assert(p_minus_1_bytes[0] > 0);\n p_minus_1_bytes[0] -= 1;\n\n let p_minus_1 = Field::from_le_bytes::<32>(p_minus_1_bytes);\n assert_eq(p_minus_1 + 1, 0);\n\n // checking that converting (modulus - 1) from and then to 32 BE bytes produces the same bytes\n let p_minus_1_converted_bytes: [u8; 32] = p_minus_1.to_le_bytes();\n assert_eq(p_minus_1_converted_bytes, p_minus_1_bytes);\n\n // checking that incrementing this byte produces 32 LE bytes for (modulus + 1)\n let mut p_plus_1_bytes: [u8; 32] = modulus_le_bytes().as_array();\n assert(p_plus_1_bytes[0] < 255);\n p_plus_1_bytes[0] += 1;\n\n let p_plus_1 = Field::from_le_bytes::<32>(p_plus_1_bytes);\n assert_eq(p_plus_1, 1);\n\n // checking that converting p_plus_1 to 32 LE bytes produces the same\n // byte set to 1 as p_plus_1_bytes and otherwise zeroes\n let mut p_plus_1_converted_bytes: [u8; 32] = p_plus_1.to_le_bytes();\n assert_eq(p_plus_1_converted_bytes[0], 1);\n p_plus_1_converted_bytes[0] = 0;\n assert_eq(p_plus_1_converted_bytes, [0; 32]);\n\n // checking that Field::from_le_bytes::<32> on the Field modulus produces 0\n assert_eq(modulus_le_bytes().len(), 32);\n let p = Field::from_le_bytes::<32>(modulus_le_bytes().as_array());\n assert_eq(p, 0);\n\n // checking that converting 0 to 32 LE bytes produces 32 zeroes\n let p_bytes: [u8; 32] = 0.to_le_bytes();\n assert_eq(p_bytes, [0; 32]);\n }\n }\n\n /// Convert a little endian bit array to a field element.\n /// If the provided bit array overflows the field modulus then the Field will silently wrap around.\n fn from_le_bits<let N: u32>(bits: [u1; N]) -> Field {\n static_assert(\n N <= modulus_le_bits().len(),\n \"N must be less than or equal to modulus_le_bits().len()\",\n );\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bits[i] as Field) * v;\n v = v * 2;\n }\n result\n }\n\n /// Convert a big endian bit array to a field element.\n /// If the provided bit array overflows the field modulus then the Field will silently wrap around.\n fn from_be_bits<let N: u32>(bits: [u1; N]) -> Field {\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bits[N - 1 - i] as Field) * v;\n v = v * 2;\n }\n result\n }\n\n #[test]\n fn test_to_from_be_bits_bn254_edge_cases() {\n if crate::compat::is_bn254() {\n // checking that decrementing this bit produces the expected 254 BE bits for (modulus - 1)\n let mut p_minus_1_bits: [u1; 254] = modulus_be_bits().as_array();\n assert(p_minus_1_bits[254 - 1] > 0);\n p_minus_1_bits[254 - 1] -= 1;\n\n let p_minus_1 = from_be_bits::<254>(p_minus_1_bits);\n assert_eq(p_minus_1 + 1, 0);\n\n // checking that converting (modulus - 1) from and then to 254 BE bits produces the same bits\n let p_minus_1_converted_bits: [u1; 254] = p_minus_1.to_be_bits();\n assert_eq(p_minus_1_converted_bits, p_minus_1_bits);\n\n // checking that incrementing this bit produces 254 BE bits for (modulus + 4)\n let mut p_plus_4_bits: [u1; 254] = modulus_be_bits().as_array();\n assert(p_plus_4_bits[254 - 3] < 1);\n p_plus_4_bits[254 - 3] += 1;\n\n let p_plus_4 = from_be_bits::<254>(p_plus_4_bits);\n assert_eq(p_plus_4, 4);\n\n // checking that converting p_plus_4 to 254 BE bits produces the same\n // bit set to 1 as p_plus_4_bits and otherwise zeroes\n let mut p_plus_4_converted_bits: [u1; 254] = p_plus_4.to_be_bits();\n assert_eq(p_plus_4_converted_bits[254 - 3], 1);\n p_plus_4_converted_bits[254 - 3] = 0;\n assert_eq(p_plus_4_converted_bits, [0; 254]);\n\n // checking that Field::from_be_bits::<254> on the Field modulus produces 0\n assert_eq(modulus_be_bits().len(), 254);\n let p = from_be_bits::<254>(modulus_be_bits().as_array());\n assert_eq(p, 0);\n\n // checking that converting 0 to 254 BE bytes produces 254 zeroes\n let p_bits: [u1; 254] = 0.to_be_bits();\n assert_eq(p_bits, [0; 254]);\n }\n }\n\n #[test]\n fn test_to_from_le_bits_bn254_edge_cases() {\n if crate::compat::is_bn254() {\n // checking that decrementing this bit produces the expected 254 LE bits for (modulus - 1)\n let mut p_minus_1_bits: [u1; 254] = modulus_le_bits().as_array();\n assert(p_minus_1_bits[0] > 0);\n p_minus_1_bits[0] -= 1;\n\n let p_minus_1 = from_le_bits::<254>(p_minus_1_bits);\n assert_eq(p_minus_1 + 1, 0);\n\n // checking that converting (modulus - 1) from and then to 254 BE bits produces the same bits\n let p_minus_1_converted_bits: [u1; 254] = p_minus_1.to_le_bits();\n assert_eq(p_minus_1_converted_bits, p_minus_1_bits);\n\n // checking that incrementing this bit produces 254 LE bits for (modulus + 4)\n let mut p_plus_4_bits: [u1; 254] = modulus_le_bits().as_array();\n assert(p_plus_4_bits[2] < 1);\n p_plus_4_bits[2] += 1;\n\n let p_plus_4 = from_le_bits::<254>(p_plus_4_bits);\n assert_eq(p_plus_4, 4);\n\n // checking that converting p_plus_4 to 254 LE bits produces the same\n // bit set to 1 as p_plus_4_bits and otherwise zeroes\n let mut p_plus_4_converted_bits: [u1; 254] = p_plus_4.to_le_bits();\n assert_eq(p_plus_4_converted_bits[2], 1);\n p_plus_4_converted_bits[2] = 0;\n assert_eq(p_plus_4_converted_bits, [0; 254]);\n\n // checking that Field::from_le_bits::<254> on the Field modulus produces 0\n assert_eq(modulus_le_bits().len(), 254);\n let p = from_le_bits::<254>(modulus_le_bits().as_array());\n assert_eq(p, 0);\n\n // checking that converting 0 to 254 LE bytes produces 254 zeroes\n let p_bits: [u1; 254] = 0.to_le_bits();\n assert_eq(p_bits, [0; 254]);\n }\n }\n}\n"
|
|
4524
|
+
"source": "pub mod bn254;\nuse crate::{runtime::is_unconstrained, static_assert};\nuse bn254::lt as bn254_lt;\n\nimpl Field {\n /// Asserts that `self` can be represented in `bit_size` bits.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^{bit_size}`.\n // docs:start:assert_max_bit_size\n pub fn assert_max_bit_size<let BIT_SIZE: u32>(self) {\n // docs:end:assert_max_bit_size\n static_assert(\n BIT_SIZE < modulus_num_bits() as u32,\n \"BIT_SIZE must be less than modulus_num_bits\",\n );\n __assert_max_bit_size(self, BIT_SIZE);\n }\n\n /// Decomposes `self` into its little endian bit decomposition as a `[u1; N]` array.\n /// This array will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting array will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// The bit decomposition returned is canonical and is guaranteed to not overflow the modulus.\n // docs:start:to_le_bits\n pub fn to_le_bits<let N: u32>(self: Self) -> [u1; N] {\n // docs:end:to_le_bits\n let bits = __to_le_bits(self);\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_le_bits();\n assert(bits.len() <= p.len());\n let mut ok = bits.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bits[N - 1 - i] != p[N - 1 - i]) {\n assert(p[N - 1 - i] == 1);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bits\n }\n\n /// Decomposes `self` into its big endian bit decomposition as a `[u1; N]` array.\n /// This array will be zero padded should not all bits be necessary to represent `self`.\n ///\n /// # Failures\n /// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting array will not\n /// be able to represent the original `Field`.\n ///\n /// # Safety\n /// The bit decomposition returned is canonical and is guaranteed to not overflow the modulus.\n // docs:start:to_be_bits\n pub fn to_be_bits<let N: u32>(self: Self) -> [u1; N] {\n // docs:end:to_be_bits\n let bits = __to_be_bits(self);\n\n if !is_unconstrained() {\n // Ensure that the decomposition does not overflow the modulus\n let p = modulus_be_bits();\n assert(bits.len() <= p.len());\n let mut ok = bits.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bits[i] != p[i]) {\n assert(p[i] == 1);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bits\n }\n\n /// Decomposes `self` into its little endian byte decomposition as a `[u8;N]` array\n /// This array will be zero padded should not all bytes be necessary to represent `self`.\n ///\n /// # Failures\n /// The length N of the array must be big enough to contain all the bytes of the 'self',\n /// and no more than the number of bytes required to represent the field modulus\n ///\n /// # Safety\n /// The result is ensured to be the canonical decomposition of the field element\n // docs:start:to_le_bytes\n pub fn to_le_bytes<let N: u32>(self: Self) -> [u8; N] {\n // docs:end:to_le_bytes\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n // Compute the byte decomposition\n let bytes = self.to_le_radix(256);\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_le_bytes();\n assert(bytes.len() <= p.len());\n let mut ok = bytes.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bytes[N - 1 - i] != p[N - 1 - i]) {\n assert(bytes[N - 1 - i] < p[N - 1 - i]);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bytes\n }\n\n /// Decomposes `self` into its big endian byte decomposition as a `[u8;N]` array of length required to represent the field modulus\n /// This array will be zero padded should not all bytes be necessary to represent `self`.\n ///\n /// # Failures\n /// The length N of the array must be big enough to contain all the bytes of the 'self',\n /// and no more than the number of bytes required to represent the field modulus\n ///\n /// # Safety\n /// The result is ensured to be the canonical decomposition of the field element\n // docs:start:to_be_bytes\n pub fn to_be_bytes<let N: u32>(self: Self) -> [u8; N] {\n // docs:end:to_be_bytes\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n // Compute the byte decomposition\n let bytes = self.to_be_radix(256);\n\n if !is_unconstrained() {\n // Ensure that the byte decomposition does not overflow the modulus\n let p = modulus_be_bytes();\n assert(bytes.len() <= p.len());\n let mut ok = bytes.len() != p.len();\n for i in 0..N {\n if !ok {\n if (bytes[i] != p[i]) {\n assert(bytes[i] < p[i]);\n ok = true;\n }\n }\n }\n assert(ok);\n }\n bytes\n }\n\n fn to_le_radix<let N: u32>(self: Self, radix: u32) -> [u8; N] {\n // Brillig does not need an immediate radix\n if !crate::runtime::is_unconstrained() {\n static_assert(1 < radix, \"radix must be greater than 1\");\n static_assert(radix <= 256, \"radix must be less than or equal to 256\");\n static_assert(radix & (radix - 1) == 0, \"radix must be a power of 2\");\n }\n __to_le_radix(self, radix)\n }\n\n fn to_be_radix<let N: u32>(self: Self, radix: u32) -> [u8; N] {\n // Brillig does not need an immediate radix\n if !crate::runtime::is_unconstrained() {\n static_assert(1 < radix, \"radix must be greater than 1\");\n static_assert(radix <= 256, \"radix must be less than or equal to 256\");\n static_assert(radix & (radix - 1) == 0, \"radix must be a power of 2\");\n }\n __to_be_radix(self, radix)\n }\n\n // Returns self to the power of the given exponent value.\n // Caution: we assume the exponent fits into 32 bits\n // using a bigger bit size impacts negatively the performance and should be done only if the exponent does not fit in 32 bits\n pub fn pow_32(self, exponent: Field) -> Field {\n let mut r: Field = 1;\n let b: [u1; 32] = exponent.to_le_bits();\n\n for i in 1..33 {\n r *= r;\n r = (b[32 - i] as Field) * (r * self) + (1 - b[32 - i] as Field) * r;\n }\n r\n }\n\n // Parity of (prime) Field element, i.e. sgn0(x mod p) = 0 if x `elem` {0, ..., p-1} is even, otherwise sgn0(x mod p) = 1.\n pub fn sgn0(self) -> u1 {\n self as u1\n }\n\n pub fn lt(self, another: Field) -> bool {\n if crate::compat::is_bn254() {\n bn254_lt(self, another)\n } else {\n lt_fallback(self, another)\n }\n }\n\n /// Convert a little endian byte array to a field element.\n /// If the provided byte array overflows the field modulus then the Field will silently wrap around.\n pub fn from_le_bytes<let N: u32>(bytes: [u8; N]) -> Field {\n static_assert(\n N <= modulus_le_bytes().len(),\n \"N must be less than or equal to modulus_le_bytes().len()\",\n );\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bytes[i] as Field) * v;\n v = v * 256;\n }\n result\n }\n\n /// Convert a big endian byte array to a field element.\n /// If the provided byte array overflows the field modulus then the Field will silently wrap around.\n pub fn from_be_bytes<let N: u32>(bytes: [u8; N]) -> Field {\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bytes[N - 1 - i] as Field) * v;\n v = v * 256;\n }\n result\n }\n}\n\n#[builtin(apply_range_constraint)]\nfn __assert_max_bit_size(value: Field, bit_size: u32) {}\n\n// `_radix` must be less than 256\n#[builtin(to_le_radix)]\nfn __to_le_radix<let N: u32>(value: Field, radix: u32) -> [u8; N] {}\n\n// `_radix` must be less than 256\n#[builtin(to_be_radix)]\nfn __to_be_radix<let N: u32>(value: Field, radix: u32) -> [u8; N] {}\n\n/// Decomposes `self` into its little endian bit decomposition as a `[u1; N]` array.\n/// This array will be zero padded should not all bits be necessary to represent `self`.\n///\n/// # Failures\n/// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting array will not\n/// be able to represent the original `Field`.\n///\n/// # Safety\n/// Values of `N` equal to or greater than the number of bits necessary to represent the `Field` modulus\n/// (e.g. 254 for the BN254 field) allow for multiple bit decompositions. This is due to how the `Field` will\n/// wrap around due to overflow when verifying the decomposition.\n#[builtin(to_le_bits)]\nfn __to_le_bits<let N: u32>(value: Field) -> [u1; N] {}\n\n/// Decomposes `self` into its big endian bit decomposition as a `[u1; N]` array.\n/// This array will be zero padded should not all bits be necessary to represent `self`.\n///\n/// # Failures\n/// Causes a constraint failure for `Field` values exceeding `2^N` as the resulting array will not\n/// be able to represent the original `Field`.\n///\n/// # Safety\n/// Values of `N` equal to or greater than the number of bits necessary to represent the `Field` modulus\n/// (e.g. 254 for the BN254 field) allow for multiple bit decompositions. This is due to how the `Field` will\n/// wrap around due to overflow when verifying the decomposition.\n#[builtin(to_be_bits)]\nfn __to_be_bits<let N: u32>(value: Field) -> [u1; N] {}\n\n#[builtin(modulus_num_bits)]\npub comptime fn modulus_num_bits() -> u64 {}\n\n#[builtin(modulus_be_bits)]\npub comptime fn modulus_be_bits() -> [u1] {}\n\n#[builtin(modulus_le_bits)]\npub comptime fn modulus_le_bits() -> [u1] {}\n\n#[builtin(modulus_be_bytes)]\npub comptime fn modulus_be_bytes() -> [u8] {}\n\n#[builtin(modulus_le_bytes)]\npub comptime fn modulus_le_bytes() -> [u8] {}\n\n/// An unconstrained only built in to efficiently compare fields.\n#[builtin(field_less_than)]\nunconstrained fn __field_less_than(x: Field, y: Field) -> bool {}\n\npub(crate) unconstrained fn field_less_than(x: Field, y: Field) -> bool {\n __field_less_than(x, y)\n}\n\n// Convert a 32 byte array to a field element by modding\npub fn bytes32_to_field(bytes32: [u8; 32]) -> Field {\n // Convert it to a field element\n let mut v = 1;\n let mut high = 0 as Field;\n let mut low = 0 as Field;\n\n for i in 0..16 {\n high = high + (bytes32[15 - i] as Field) * v;\n low = low + (bytes32[16 + 15 - i] as Field) * v;\n v = v * 256;\n }\n // Abuse that a % p + b % p = (a + b) % p and that low < p\n low + high * v\n}\n\nfn lt_fallback(x: Field, y: Field) -> bool {\n if is_unconstrained() {\n // Safety: unconstrained context\n unsafe {\n field_less_than(x, y)\n }\n } else {\n let x_bytes: [u8; 32] = x.to_le_bytes();\n let y_bytes: [u8; 32] = y.to_le_bytes();\n let mut x_is_lt = false;\n let mut done = false;\n for i in 0..32 {\n if (!done) {\n let x_byte = x_bytes[32 - 1 - i] as u8;\n let y_byte = y_bytes[32 - 1 - i] as u8;\n let bytes_match = x_byte == y_byte;\n if !bytes_match {\n x_is_lt = x_byte < y_byte;\n done = true;\n }\n }\n }\n x_is_lt\n }\n}\n\nmod tests {\n use crate::{panic::panic, runtime, static_assert};\n use super::{\n field_less_than, modulus_be_bits, modulus_be_bytes, modulus_le_bits, modulus_le_bytes,\n };\n\n #[test]\n // docs:start:to_be_bits_example\n fn test_to_be_bits() {\n let field = 2;\n let bits: [u1; 8] = field.to_be_bits();\n assert_eq(bits, [0, 0, 0, 0, 0, 0, 1, 0]);\n }\n // docs:end:to_be_bits_example\n\n #[test]\n // docs:start:to_le_bits_example\n fn test_to_le_bits() {\n let field = 2;\n let bits: [u1; 8] = field.to_le_bits();\n assert_eq(bits, [0, 1, 0, 0, 0, 0, 0, 0]);\n }\n // docs:end:to_le_bits_example\n\n #[test]\n // docs:start:to_be_bytes_example\n fn test_to_be_bytes() {\n let field = 2;\n let bytes: [u8; 8] = field.to_be_bytes();\n assert_eq(bytes, [0, 0, 0, 0, 0, 0, 0, 2]);\n assert_eq(Field::from_be_bytes::<8>(bytes), field);\n }\n // docs:end:to_be_bytes_example\n\n #[test]\n // docs:start:to_le_bytes_example\n fn test_to_le_bytes() {\n let field = 2;\n let bytes: [u8; 8] = field.to_le_bytes();\n assert_eq(bytes, [2, 0, 0, 0, 0, 0, 0, 0]);\n assert_eq(Field::from_le_bytes::<8>(bytes), field);\n }\n // docs:end:to_le_bytes_example\n\n #[test]\n // docs:start:to_be_radix_example\n fn test_to_be_radix() {\n // 259, in base 256, big endian, is [1, 3].\n // i.e. 3 * 256^0 + 1 * 256^1\n let field = 259;\n\n // The radix (in this example, 256) must be a power of 2.\n // The length of the returned byte array can be specified to be\n // >= the amount of space needed.\n let bytes: [u8; 8] = field.to_be_radix(256);\n assert_eq(bytes, [0, 0, 0, 0, 0, 0, 1, 3]);\n assert_eq(Field::from_be_bytes::<8>(bytes), field);\n }\n // docs:end:to_be_radix_example\n\n #[test]\n // docs:start:to_le_radix_example\n fn test_to_le_radix() {\n // 259, in base 256, little endian, is [3, 1].\n // i.e. 3 * 256^0 + 1 * 256^1\n let field = 259;\n\n // The radix (in this example, 256) must be a power of 2.\n // The length of the returned byte array can be specified to be\n // >= the amount of space needed.\n let bytes: [u8; 8] = field.to_le_radix(256);\n assert_eq(bytes, [3, 1, 0, 0, 0, 0, 0, 0]);\n assert_eq(Field::from_le_bytes::<8>(bytes), field);\n }\n // docs:end:to_le_radix_example\n\n #[test(should_fail_with = \"radix must be greater than 1\")]\n fn test_to_le_radix_1() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(1);\n } else {\n panic(\"radix must be greater than 1\");\n }\n }\n\n // Updated test to account for Brillig restriction that radix must be greater than 2\n #[test(should_fail_with = \"radix must be greater than 1\")]\n fn test_to_le_radix_brillig_1() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 1;\n let _: [u8; 8] = field.to_le_radix(1);\n } else {\n panic(\"radix must be greater than 1\");\n }\n }\n\n #[test(should_fail_with = \"radix must be a power of 2\")]\n fn test_to_le_radix_3() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(3);\n } else {\n panic(\"radix must be a power of 2\");\n }\n }\n\n #[test]\n fn test_to_le_radix_brillig_3() {\n // this test should only fail in constrained mode\n if runtime::is_unconstrained() {\n let field = 1;\n let out: [u8; 8] = field.to_le_radix(3);\n let mut expected = [0; 8];\n expected[0] = 1;\n assert(out == expected, \"unexpected result\");\n }\n }\n\n #[test(should_fail_with = \"radix must be less than or equal to 256\")]\n fn test_to_le_radix_512() {\n // this test should only fail in constrained mode\n if !runtime::is_unconstrained() {\n let field = 2;\n let _: [u8; 8] = field.to_le_radix(512);\n } else {\n panic(\"radix must be less than or equal to 256\")\n }\n }\n\n #[test(should_fail_with = \"Field failed to decompose into specified 16 limbs\")]\n unconstrained fn not_enough_limbs_brillig() {\n let _: [u8; 16] = 0x100000000000000000000000000000000.to_le_bytes();\n }\n\n #[test(should_fail_with = \"Field failed to decompose into specified 16 limbs\")]\n fn not_enough_limbs() {\n let _: [u8; 16] = 0x100000000000000000000000000000000.to_le_bytes();\n }\n\n #[test]\n unconstrained fn test_field_less_than() {\n assert(field_less_than(0, 1));\n assert(field_less_than(0, 0x100));\n assert(field_less_than(0x100, 0 - 1));\n assert(!field_less_than(0 - 1, 0));\n }\n\n #[test]\n unconstrained fn test_large_field_values_unconstrained() {\n let large_field = 0xffffffffffffffff;\n\n let bits: [u1; 64] = large_field.to_le_bits();\n assert_eq(bits[0], 1);\n\n let bytes: [u8; 8] = large_field.to_le_bytes();\n assert_eq(Field::from_le_bytes::<8>(bytes), large_field);\n\n let radix_bytes: [u8; 8] = large_field.to_le_radix(256);\n assert_eq(Field::from_le_bytes::<8>(radix_bytes), large_field);\n }\n\n #[test]\n fn test_large_field_values() {\n let large_val = 0xffffffffffffffff;\n\n let bits: [u1; 64] = large_val.to_le_bits();\n assert_eq(bits[0], 1);\n\n let bytes: [u8; 8] = large_val.to_le_bytes();\n assert_eq(Field::from_le_bytes::<8>(bytes), large_val);\n\n let radix_bytes: [u8; 8] = large_val.to_le_radix(256);\n assert_eq(Field::from_le_bytes::<8>(radix_bytes), large_val);\n }\n\n #[test]\n fn test_decomposition_edge_cases() {\n let zero_bits: [u1; 8] = 0.to_le_bits();\n assert_eq(zero_bits, [0; 8]);\n\n let zero_bytes: [u8; 8] = 0.to_le_bytes();\n assert_eq(zero_bytes, [0; 8]);\n\n let one_bits: [u1; 8] = 1.to_le_bits();\n let expected: [u1; 8] = [1, 0, 0, 0, 0, 0, 0, 0];\n assert_eq(one_bits, expected);\n\n let pow2_bits: [u1; 8] = 4.to_le_bits();\n let expected: [u1; 8] = [0, 0, 1, 0, 0, 0, 0, 0];\n assert_eq(pow2_bits, expected);\n }\n\n #[test]\n fn test_pow_32() {\n assert_eq(2.pow_32(3), 8);\n assert_eq(3.pow_32(2), 9);\n assert_eq(5.pow_32(0), 1);\n assert_eq(7.pow_32(1), 7);\n\n assert_eq(2.pow_32(10), 1024);\n\n assert_eq(0.pow_32(5), 0);\n assert_eq(0.pow_32(0), 1);\n\n assert_eq(1.pow_32(100), 1);\n }\n\n #[test]\n fn test_sgn0() {\n assert_eq(0.sgn0(), 0);\n assert_eq(2.sgn0(), 0);\n assert_eq(4.sgn0(), 0);\n assert_eq(100.sgn0(), 0);\n\n assert_eq(1.sgn0(), 1);\n assert_eq(3.sgn0(), 1);\n assert_eq(5.sgn0(), 1);\n assert_eq(101.sgn0(), 1);\n }\n\n #[test(should_fail_with = \"Field failed to decompose into specified 8 limbs\")]\n fn test_bit_decomposition_overflow() {\n // 8 bits can't represent large field values\n let large_val = 0x1000000000000000;\n let _: [u1; 8] = large_val.to_le_bits();\n }\n\n #[test(should_fail_with = \"Field failed to decompose into specified 4 limbs\")]\n fn test_byte_decomposition_overflow() {\n // 4 bytes can't represent large field values\n let large_val = 0x1000000000000000;\n let _: [u8; 4] = large_val.to_le_bytes();\n }\n\n #[test]\n fn test_to_from_be_bytes_bn254_edge_cases() {\n if crate::compat::is_bn254() {\n // checking that decrementing this byte produces the expected 32 BE bytes for (modulus - 1)\n let mut p_minus_1_bytes: [u8; 32] = modulus_be_bytes().as_array();\n assert(p_minus_1_bytes[32 - 1] > 0);\n p_minus_1_bytes[32 - 1] -= 1;\n\n let p_minus_1 = Field::from_be_bytes::<32>(p_minus_1_bytes);\n assert_eq(p_minus_1 + 1, 0);\n\n // checking that converting (modulus - 1) from and then to 32 BE bytes produces the same bytes\n let p_minus_1_converted_bytes: [u8; 32] = p_minus_1.to_be_bytes();\n assert_eq(p_minus_1_converted_bytes, p_minus_1_bytes);\n\n // checking that incrementing this byte produces 32 BE bytes for (modulus + 1)\n let mut p_plus_1_bytes: [u8; 32] = modulus_be_bytes().as_array();\n assert(p_plus_1_bytes[32 - 1] < 255);\n p_plus_1_bytes[32 - 1] += 1;\n\n let p_plus_1 = Field::from_be_bytes::<32>(p_plus_1_bytes);\n assert_eq(p_plus_1, 1);\n\n // checking that converting p_plus_1 to 32 BE bytes produces the same\n // byte set to 1 as p_plus_1_bytes and otherwise zeroes\n let mut p_plus_1_converted_bytes: [u8; 32] = p_plus_1.to_be_bytes();\n assert_eq(p_plus_1_converted_bytes[32 - 1], 1);\n p_plus_1_converted_bytes[32 - 1] = 0;\n assert_eq(p_plus_1_converted_bytes, [0; 32]);\n\n // checking that Field::from_be_bytes::<32> on the Field modulus produces 0\n assert_eq(modulus_be_bytes().len(), 32);\n let p = Field::from_be_bytes::<32>(modulus_be_bytes().as_array());\n assert_eq(p, 0);\n\n // checking that converting 0 to 32 BE bytes produces 32 zeroes\n let p_bytes: [u8; 32] = 0.to_be_bytes();\n assert_eq(p_bytes, [0; 32]);\n }\n }\n\n #[test]\n fn test_to_from_le_bytes_bn254_edge_cases() {\n if crate::compat::is_bn254() {\n // checking that decrementing this byte produces the expected 32 LE bytes for (modulus - 1)\n let mut p_minus_1_bytes: [u8; 32] = modulus_le_bytes().as_array();\n assert(p_minus_1_bytes[0] > 0);\n p_minus_1_bytes[0] -= 1;\n\n let p_minus_1 = Field::from_le_bytes::<32>(p_minus_1_bytes);\n assert_eq(p_minus_1 + 1, 0);\n\n // checking that converting (modulus - 1) from and then to 32 BE bytes produces the same bytes\n let p_minus_1_converted_bytes: [u8; 32] = p_minus_1.to_le_bytes();\n assert_eq(p_minus_1_converted_bytes, p_minus_1_bytes);\n\n // checking that incrementing this byte produces 32 LE bytes for (modulus + 1)\n let mut p_plus_1_bytes: [u8; 32] = modulus_le_bytes().as_array();\n assert(p_plus_1_bytes[0] < 255);\n p_plus_1_bytes[0] += 1;\n\n let p_plus_1 = Field::from_le_bytes::<32>(p_plus_1_bytes);\n assert_eq(p_plus_1, 1);\n\n // checking that converting p_plus_1 to 32 LE bytes produces the same\n // byte set to 1 as p_plus_1_bytes and otherwise zeroes\n let mut p_plus_1_converted_bytes: [u8; 32] = p_plus_1.to_le_bytes();\n assert_eq(p_plus_1_converted_bytes[0], 1);\n p_plus_1_converted_bytes[0] = 0;\n assert_eq(p_plus_1_converted_bytes, [0; 32]);\n\n // checking that Field::from_le_bytes::<32> on the Field modulus produces 0\n assert_eq(modulus_le_bytes().len(), 32);\n let p = Field::from_le_bytes::<32>(modulus_le_bytes().as_array());\n assert_eq(p, 0);\n\n // checking that converting 0 to 32 LE bytes produces 32 zeroes\n let p_bytes: [u8; 32] = 0.to_le_bytes();\n assert_eq(p_bytes, [0; 32]);\n }\n }\n\n /// Convert a little endian bit array to a field element.\n /// If the provided bit array overflows the field modulus then the Field will silently wrap around.\n fn from_le_bits<let N: u32>(bits: [u1; N]) -> Field {\n static_assert(\n N <= modulus_le_bits().len(),\n \"N must be less than or equal to modulus_le_bits().len()\",\n );\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bits[i] as Field) * v;\n v = v * 2;\n }\n result\n }\n\n /// Convert a big endian bit array to a field element.\n /// If the provided bit array overflows the field modulus then the Field will silently wrap around.\n fn from_be_bits<let N: u32>(bits: [u1; N]) -> Field {\n let mut v = 1;\n let mut result = 0;\n\n for i in 0..N {\n result += (bits[N - 1 - i] as Field) * v;\n v = v * 2;\n }\n result\n }\n\n #[test]\n fn test_to_from_be_bits_bn254_edge_cases() {\n if crate::compat::is_bn254() {\n // checking that decrementing this bit produces the expected 254 BE bits for (modulus - 1)\n let mut p_minus_1_bits: [u1; 254] = modulus_be_bits().as_array();\n assert(p_minus_1_bits[254 - 1] > 0);\n p_minus_1_bits[254 - 1] -= 1;\n\n let p_minus_1 = from_be_bits::<254>(p_minus_1_bits);\n assert_eq(p_minus_1 + 1, 0);\n\n // checking that converting (modulus - 1) from and then to 254 BE bits produces the same bits\n let p_minus_1_converted_bits: [u1; 254] = p_minus_1.to_be_bits();\n assert_eq(p_minus_1_converted_bits, p_minus_1_bits);\n\n // checking that incrementing this bit produces 254 BE bits for (modulus + 4)\n let mut p_plus_4_bits: [u1; 254] = modulus_be_bits().as_array();\n assert(p_plus_4_bits[254 - 3] < 1);\n p_plus_4_bits[254 - 3] += 1;\n\n let p_plus_4 = from_be_bits::<254>(p_plus_4_bits);\n assert_eq(p_plus_4, 4);\n\n // checking that converting p_plus_4 to 254 BE bits produces the same\n // bit set to 1 as p_plus_4_bits and otherwise zeroes\n let mut p_plus_4_converted_bits: [u1; 254] = p_plus_4.to_be_bits();\n assert_eq(p_plus_4_converted_bits[254 - 3], 1);\n p_plus_4_converted_bits[254 - 3] = 0;\n assert_eq(p_plus_4_converted_bits, [0; 254]);\n\n // checking that Field::from_be_bits::<254> on the Field modulus produces 0\n assert_eq(modulus_be_bits().len(), 254);\n let p = from_be_bits::<254>(modulus_be_bits().as_array());\n assert_eq(p, 0);\n\n // checking that converting 0 to 254 BE bytes produces 254 zeroes\n let p_bits: [u1; 254] = 0.to_be_bits();\n assert_eq(p_bits, [0; 254]);\n }\n }\n\n #[test]\n fn test_to_from_le_bits_bn254_edge_cases() {\n if crate::compat::is_bn254() {\n // checking that decrementing this bit produces the expected 254 LE bits for (modulus - 1)\n let mut p_minus_1_bits: [u1; 254] = modulus_le_bits().as_array();\n assert(p_minus_1_bits[0] > 0);\n p_minus_1_bits[0] -= 1;\n\n let p_minus_1 = from_le_bits::<254>(p_minus_1_bits);\n assert_eq(p_minus_1 + 1, 0);\n\n // checking that converting (modulus - 1) from and then to 254 BE bits produces the same bits\n let p_minus_1_converted_bits: [u1; 254] = p_minus_1.to_le_bits();\n assert_eq(p_minus_1_converted_bits, p_minus_1_bits);\n\n // checking that incrementing this bit produces 254 LE bits for (modulus + 4)\n let mut p_plus_4_bits: [u1; 254] = modulus_le_bits().as_array();\n assert(p_plus_4_bits[2] < 1);\n p_plus_4_bits[2] += 1;\n\n let p_plus_4 = from_le_bits::<254>(p_plus_4_bits);\n assert_eq(p_plus_4, 4);\n\n // checking that converting p_plus_4 to 254 LE bits produces the same\n // bit set to 1 as p_plus_4_bits and otherwise zeroes\n let mut p_plus_4_converted_bits: [u1; 254] = p_plus_4.to_le_bits();\n assert_eq(p_plus_4_converted_bits[2], 1);\n p_plus_4_converted_bits[2] = 0;\n assert_eq(p_plus_4_converted_bits, [0; 254]);\n\n // checking that Field::from_le_bits::<254> on the Field modulus produces 0\n assert_eq(modulus_le_bits().len(), 254);\n let p = from_le_bits::<254>(modulus_le_bits().as_array());\n assert_eq(p, 0);\n\n // checking that converting 0 to 254 LE bytes produces 254 zeroes\n let p_bits: [u1; 254] = 0.to_le_bits();\n assert_eq(p_bits, [0; 254]);\n }\n }\n}\n"
|
|
4525
4525
|
},
|
|
4526
4526
|
"184": {
|
|
4527
4527
|
"path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/oracle/message_processing.nr",
|
|
@@ -4573,7 +4573,7 @@
|
|
|
4573
4573
|
},
|
|
4574
4574
|
"3": {
|
|
4575
4575
|
"path": "std/array/mod.nr",
|
|
4576
|
-
"source": "use crate::cmp::{Eq, Ord};\nuse crate::convert::From;\nuse crate::runtime::is_unconstrained;\n\nmod check_shuffle;\nmod quicksort;\n\nimpl<T, let N: u32> [T; N] {\n /// Returns the length of this array.\n ///\n /// ```noir\n /// fn len(self) -> Field\n /// ```\n ///\n /// example\n ///\n /// ```noir\n /// fn main() {\n /// let array = [42, 42];\n /// assert(array.len() == 2);\n /// }\n /// ```\n #[builtin(array_len)]\n pub fn len(self) -> u32 {}\n\n /// Returns this array as a slice.\n ///\n /// ```noir\n /// let array = [1, 2];\n /// let slice = array.as_slice();\n /// assert_eq(slice, &[1, 2]);\n /// ```\n #[builtin(as_slice)]\n pub fn as_slice(self) -> [T] {}\n\n /// Applies a function to each element of this array, returning a new array containing the mapped elements.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let b = a.map(|a| a * 2);\n /// assert_eq(b, [2, 4, 6]);\n /// ```\n pub fn map<U, Env>(self, f: fn[Env](T) -> U) -> [U; N] {\n let uninitialized = crate::mem::zeroed();\n let mut ret = [uninitialized; N];\n\n for i in 0..self.len() {\n ret[i] = f(self[i]);\n }\n\n ret\n }\n\n /// Applies a function to each element of this array along with its index,\n /// returning a new array containing the mapped elements.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let b = a.mapi(|i, a| i + a * 2);\n /// assert_eq(b, [2, 5, 8]);\n /// ```\n pub fn mapi<U, Env>(self, f: fn[Env](u32, T) -> U) -> [U; N] {\n let uninitialized = crate::mem::zeroed();\n let mut ret = [uninitialized; N];\n\n for i in 0..self.len() {\n ret[i] = f(i, self[i]);\n }\n\n ret\n }\n\n /// Applies a function to each element of this array.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let mut b = [0; 3];\n /// let mut i = 0;\n /// a.for_each(|x| {\n /// b[i] = x;\n /// i += 1;\n /// });\n /// assert_eq(a, b);\n /// ```\n pub fn for_each<Env>(self, f: fn[Env](T) -> ()) {\n for i in 0..self.len() {\n f(self[i]);\n }\n }\n\n /// Applies a function to each element of this array along with its index.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let mut b = [0; 3];\n /// a.for_eachi(|i, x| {\n /// b[i] = x;\n /// });\n /// assert_eq(a, b);\n /// ```\n pub fn for_eachi<Env>(self, f: fn[Env](u32, T) -> ()) {\n for i in 0..self.len() {\n f(i, self[i]);\n }\n }\n\n /// Applies a function to each element of the array, returning the final accumulated value. The first\n /// parameter is the initial value.\n ///\n /// This is a left fold, so the given function will be applied to the accumulator and first element of\n /// the array, then the second, and so on. For a given call the expected result would be equivalent to:\n ///\n /// ```rust\n /// let a1 = [1];\n /// let a2 = [1, 2];\n /// let a3 = [1, 2, 3];\n ///\n /// let f = |a, b| a - b;\n /// a1.fold(10, f); //=> f(10, 1)\n /// a2.fold(10, f); //=> f(f(10, 1), 2)\n /// a3.fold(10, f); //=> f(f(f(10, 1), 2), 3)\n ///\n /// assert_eq(a3.fold(10, f), 10 - 1 - 2 - 3);\n /// ```\n pub fn fold<U, Env>(self, mut accumulator: U, f: fn[Env](U, T) -> U) -> U {\n for elem in self {\n accumulator = f(accumulator, elem);\n }\n accumulator\n }\n\n /// Same as fold, but uses the first element as the starting element.\n ///\n /// Requires the input array to be non-empty.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr = [1, 2, 3, 4];\n /// let reduced = arr.reduce(|a, b| a + b);\n /// assert(reduced == 10);\n /// }\n /// ```\n pub fn reduce<Env>(self, f: fn[Env](T, T) -> T) -> T {\n let mut accumulator = self[0];\n for i in 1..self.len() {\n accumulator = f(accumulator, self[i]);\n }\n accumulator\n }\n\n /// Returns true if all the elements in this array satisfy the given predicate.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr = [2, 2, 2, 2, 2];\n /// let all = arr.all(|a| a == 2);\n /// assert(all);\n /// }\n /// ```\n pub fn all<Env>(self, predicate: fn[Env](T) -> bool) -> bool {\n let mut ret = true;\n for elem in self {\n ret &= predicate(elem);\n }\n ret\n }\n\n /// Returns true if any of the elements in this array satisfy the given predicate.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr = [2, 2, 2, 2, 5];\n /// let any = arr.any(|a| a == 5);\n /// assert(any);\n /// }\n /// ```\n pub fn any<Env>(self, predicate: fn[Env](T) -> bool) -> bool {\n let mut ret = false;\n for elem in self {\n ret |= predicate(elem);\n }\n ret\n }\n\n /// Concatenates this array with another array.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr1 = [1, 2, 3, 4];\n /// let arr2 = [6, 7, 8, 9, 10, 11];\n /// let concatenated_arr = arr1.concat(arr2);\n /// assert(concatenated_arr == [1, 2, 3, 4, 6, 7, 8, 9, 10, 11]);\n /// }\n /// ```\n pub fn concat<let M: u32>(self, array2: [T; M]) -> [T; N + M] {\n let mut result = [crate::mem::zeroed(); N + M];\n for i in 0..N {\n result[i] = self[i];\n }\n for i in 0..M {\n result[i + N] = array2[i];\n }\n result\n }\n}\n\nimpl<T, let N: u32> [T; N]\nwhere\n T: Ord + Eq,\n{\n /// Returns a new sorted array. The original array remains untouched. Notice that this function will\n /// only work for arrays of fields or integers, not for any arbitrary type. This is because the sorting\n /// logic it uses internally is optimized specifically for these values. If you need a sort function to\n /// sort any type, you should use the [`Self::sort_via`] function.\n ///\n /// Example:\n ///\n /// ```rust\n /// fn main() {\n /// let arr = [42, 32];\n /// let sorted = arr.sort();\n /// assert(sorted == [32, 42]);\n /// }\n /// ```\n pub fn sort(self) -> Self {\n self.sort_via(|a, b| a <= b)\n }\n}\n\nimpl<T, let N: u32> [T; N]\nwhere\n T: Eq,\n{\n /// Returns a new sorted array by sorting it with a custom comparison function.\n /// The original array remains untouched.\n /// The ordering function must return true if the first argument should be sorted to be before the second argument or is equal to the second argument.\n ///\n /// Using this method with an operator like `<` that does not return `true` for equal values will result in an assertion failure for arrays with equal elements.\n ///\n /// Example:\n ///\n /// ```rust\n /// fn main() {\n /// let arr = [42, 32]\n /// let sorted_ascending = arr.sort_via(|a, b| a <= b);\n /// assert(sorted_ascending == [32, 42]); // verifies\n ///\n /// let sorted_descending = arr.sort_via(|a, b| a >= b);\n /// assert(sorted_descending == [32, 42]); // does not verify\n /// }\n /// ```\n pub fn sort_via<Env>(self, ordering: fn[Env](T, T) -> bool) -> Self {\n // Safety: `sorted` array is checked to be:\n // a. a permutation of `input`'s elements\n // b. satisfying the predicate `ordering`\n let sorted = unsafe { quicksort::quicksort(self, ordering) };\n\n if !is_unconstrained() {\n for i in 0..N - 1 {\n assert(\n ordering(sorted[i], sorted[i + 1]),\n \"Array has not been sorted correctly according to `ordering`.\",\n );\n }\n check_shuffle::check_shuffle(self, sorted);\n }\n sorted\n }\n}\n\nimpl<let N: u32> [u8; N] {\n /// Converts a byte array of type `[u8; N]` to a string. Note that this performs no UTF-8 validation -\n /// the given array is interpreted as-is as a string.\n ///\n /// Example:\n ///\n /// ```rust\n /// fn main() {\n /// let hi = [104, 105].as_str_unchecked();\n /// assert_eq(hi, \"hi\");\n /// }\n /// ```\n #[builtin(array_as_str_unchecked)]\n pub fn as_str_unchecked(self) -> str<N> {}\n}\n\nimpl<let N: u32> From<str<N>> for [u8; N] {\n /// Returns an array of the string bytes.\n fn from(s: str<N>) -> Self {\n s.as_bytes()\n }\n}\n\nmod test {\n #[test]\n fn map_empty() {\n assert_eq([].map(|x| x + 1), []);\n }\n\n global arr_with_100_values: [u32; 100] = [\n 42, 123, 87, 93, 48, 80, 50, 5, 104, 84, 70, 47, 119, 66, 71, 121, 3, 29, 42, 118, 2, 54,\n 89, 44, 81, 0, 26, 106, 68, 96, 84, 48, 95, 54, 45, 32, 89, 100, 109, 19, 37, 41, 19, 98,\n 53, 114, 107, 66, 6, 74, 13, 19, 105, 64, 123, 28, 44, 50, 89, 58, 123, 126, 21, 43, 86, 35,\n 21, 62, 82, 0, 108, 120, 72, 72, 62, 80, 12, 71, 70, 86, 116, 73, 38, 15, 127, 81, 30, 8,\n 125, 28, 26, 69, 114, 63, 27, 28, 61, 42, 13, 32,\n ];\n global expected_with_100_values: [u32; 100] = [\n 0, 0, 2, 3, 5, 6, 8, 12, 13, 13, 15, 19, 19, 19, 21, 21, 26, 26, 27, 28, 28, 28, 29, 30, 32,\n 32, 35, 37, 38, 41, 42, 42, 42, 43, 44, 44, 45, 47, 48, 48, 50, 50, 53, 54, 54, 58, 61, 62,\n 62, 63, 64, 66, 66, 68, 69, 70, 70, 71, 71, 72, 72, 73, 74, 80, 80, 81, 81, 82, 84, 84, 86,\n 86, 87, 89, 89, 89, 93, 95, 96, 98, 100, 104, 105, 106, 107, 108, 109, 114, 114, 116, 118,\n 119, 120, 121, 123, 123, 123, 125, 126, 127,\n ];\n fn sort_u32(a: u32, b: u32) -> bool {\n a <= b\n }\n\n #[test]\n fn test_sort() {\n let mut arr: [u32; 7] = [3, 6, 8, 10, 1, 2, 1];\n\n let sorted = arr.sort();\n\n let expected: [u32; 7] = [1, 1, 2, 3, 6, 8, 10];\n assert(sorted == expected);\n }\n\n #[test]\n fn test_sort_100_values() {\n let mut arr: [u32; 100] = [\n 42, 123, 87, 93, 48, 80, 50, 5, 104, 84, 70, 47, 119, 66, 71, 121, 3, 29, 42, 118, 2,\n 54, 89, 44, 81, 0, 26, 106, 68, 96, 84, 48, 95, 54, 45, 32, 89, 100, 109, 19, 37, 41,\n 19, 98, 53, 114, 107, 66, 6, 74, 13, 19, 105, 64, 123, 28, 44, 50, 89, 58, 123, 126, 21,\n 43, 86, 35, 21, 62, 82, 0, 108, 120, 72, 72, 62, 80, 12, 71, 70, 86, 116, 73, 38, 15,\n 127, 81, 30, 8, 125, 28, 26, 69, 114, 63, 27, 28, 61, 42, 13, 32,\n ];\n\n let sorted = arr.sort();\n\n let expected: [u32; 100] = [\n 0, 0, 2, 3, 5, 6, 8, 12, 13, 13, 15, 19, 19, 19, 21, 21, 26, 26, 27, 28, 28, 28, 29, 30,\n 32, 32, 35, 37, 38, 41, 42, 42, 42, 43, 44, 44, 45, 47, 48, 48, 50, 50, 53, 54, 54, 58,\n 61, 62, 62, 63, 64, 66, 66, 68, 69, 70, 70, 71, 71, 72, 72, 73, 74, 80, 80, 81, 81, 82,\n 84, 84, 86, 86, 87, 89, 89, 89, 93, 95, 96, 98, 100, 104, 105, 106, 107, 108, 109, 114,\n 114, 116, 118, 119, 120, 121, 123, 123, 123, 125, 126, 127,\n ];\n assert(sorted == expected);\n }\n\n #[test]\n fn test_sort_100_values_comptime() {\n let sorted = arr_with_100_values.sort();\n assert(sorted == expected_with_100_values);\n }\n\n #[test]\n fn test_sort_via() {\n let mut arr: [u32; 7] = [3, 6, 8, 10, 1, 2, 1];\n\n let sorted = arr.sort_via(sort_u32);\n\n let expected: [u32; 7] = [1, 1, 2, 3, 6, 8, 10];\n assert(sorted == expected);\n }\n\n #[test]\n fn test_sort_via_100_values() {\n let mut arr: [u32; 100] = [\n 42, 123, 87, 93, 48, 80, 50, 5, 104, 84, 70, 47, 119, 66, 71, 121, 3, 29, 42, 118, 2,\n 54, 89, 44, 81, 0, 26, 106, 68, 96, 84, 48, 95, 54, 45, 32, 89, 100, 109, 19, 37, 41,\n 19, 98, 53, 114, 107, 66, 6, 74, 13, 19, 105, 64, 123, 28, 44, 50, 89, 58, 123, 126, 21,\n 43, 86, 35, 21, 62, 82, 0, 108, 120, 72, 72, 62, 80, 12, 71, 70, 86, 116, 73, 38, 15,\n 127, 81, 30, 8, 125, 28, 26, 69, 114, 63, 27, 28, 61, 42, 13, 32,\n ];\n\n let sorted = arr.sort_via(sort_u32);\n\n let expected: [u32; 100] = [\n 0, 0, 2, 3, 5, 6, 8, 12, 13, 13, 15, 19, 19, 19, 21, 21, 26, 26, 27, 28, 28, 28, 29, 30,\n 32, 32, 35, 37, 38, 41, 42, 42, 42, 43, 44, 44, 45, 47, 48, 48, 50, 50, 53, 54, 54, 58,\n 61, 62, 62, 63, 64, 66, 66, 68, 69, 70, 70, 71, 71, 72, 72, 73, 74, 80, 80, 81, 81, 82,\n 84, 84, 86, 86, 87, 89, 89, 89, 93, 95, 96, 98, 100, 104, 105, 106, 107, 108, 109, 114,\n 114, 116, 118, 119, 120, 121, 123, 123, 123, 125, 126, 127,\n ];\n assert(sorted == expected);\n }\n\n #[test]\n fn mapi_empty() {\n assert_eq([].mapi(|i, x| i * x + 1), []);\n }\n\n #[test]\n fn for_each_empty() {\n let empty_array: [Field; 0] = [];\n empty_array.for_each(|_x| assert(false));\n }\n\n #[test]\n fn for_eachi_empty() {\n let empty_array: [Field; 0] = [];\n empty_array.for_eachi(|_i, _x| assert(false));\n }\n\n #[test]\n fn map_example() {\n let a = [1, 2, 3];\n let b = a.map(|a| a * 2);\n assert_eq(b, [2, 4, 6]);\n }\n\n #[test]\n fn mapi_example() {\n let a = [1, 2, 3];\n let b = a.mapi(|i, a| i + a * 2);\n assert_eq(b, [2, 5, 8]);\n }\n\n #[test]\n fn for_each_example() {\n let a = [1, 2, 3];\n let mut b = [0, 0, 0];\n let b_ref = &mut b;\n let mut i = 0;\n let i_ref = &mut i;\n a.for_each(|x| {\n b_ref[*i_ref] = x * 2;\n *i_ref += 1;\n });\n assert_eq(b, [2, 4, 6]);\n assert_eq(i, 3);\n }\n\n #[test]\n fn for_eachi_example() {\n let a = [1, 2, 3];\n let mut b = [0, 0, 0];\n let b_ref = &mut b;\n a.for_eachi(|i, a| { b_ref[i] = i + a * 2; });\n assert_eq(b, [2, 5, 8]);\n }\n\n #[test]\n fn concat() {\n let arr1 = [1, 2, 3, 4];\n let arr2 = [6, 7, 8, 9, 10, 11];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, [1, 2, 3, 4, 6, 7, 8, 9, 10, 11]);\n }\n\n #[test]\n fn concat_zero_length_with_something() {\n let arr1 = [];\n let arr2 = [1];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, [1]);\n }\n\n #[test]\n fn concat_something_with_zero_length() {\n let arr1 = [1];\n let arr2 = [];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, [1]);\n }\n\n #[test]\n fn concat_zero_lengths() {\n let arr1: [Field; 0] = [];\n let arr2: [Field; 0] = [];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, []);\n }\n}\n"
|
|
4576
|
+
"source": "use crate::cmp::{Eq, Ord};\nuse crate::convert::From;\nuse crate::runtime::is_unconstrained;\n\nmod check_shuffle;\nmod quicksort;\n\nimpl<T, let N: u32> [T; N] {\n /// Returns the length of this array.\n ///\n /// ```noir\n /// fn len(self) -> Field\n /// ```\n ///\n /// example\n ///\n /// ```noir\n /// fn main() {\n /// let array = [42, 42];\n /// assert(array.len() == 2);\n /// }\n /// ```\n #[builtin(array_len)]\n pub fn len(self) -> u32 {}\n\n /// Returns this array as a vector.\n ///\n /// ```noir\n /// let array = [1, 2];\n /// let vector = array.as_vector();\n /// assert_eq(vector, &[1, 2]);\n /// ```\n #[builtin(as_vector)]\n pub fn as_vector(self) -> [T] {}\n\n /// Returns this array as a vector.\n /// This method is deprecated in favor of `as_vector`.\n ///\n /// ```noir\n /// let array = [1, 2];\n /// let vector = array.as_slice();\n /// assert_eq(vector, &[1, 2]);\n /// ```\n #[builtin(as_vector)]\n #[deprecated(\"This method has been renamed to `as_vector`\")]\n pub fn as_slice(self) -> [T] {}\n\n /// Applies a function to each element of this array, returning a new array containing the mapped elements.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let b = a.map(|a| a * 2);\n /// assert_eq(b, [2, 4, 6]);\n /// ```\n pub fn map<U, Env>(self, f: fn[Env](T) -> U) -> [U; N] {\n let uninitialized = crate::mem::zeroed();\n let mut ret = [uninitialized; N];\n\n for i in 0..self.len() {\n ret[i] = f(self[i]);\n }\n\n ret\n }\n\n /// Applies a function to each element of this array along with its index,\n /// returning a new array containing the mapped elements.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let b = a.mapi(|i, a| i + a * 2);\n /// assert_eq(b, [2, 5, 8]);\n /// ```\n pub fn mapi<U, Env>(self, f: fn[Env](u32, T) -> U) -> [U; N] {\n let uninitialized = crate::mem::zeroed();\n let mut ret = [uninitialized; N];\n\n for i in 0..self.len() {\n ret[i] = f(i, self[i]);\n }\n\n ret\n }\n\n /// Applies a function to each element of this array.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let mut b = [0; 3];\n /// let mut i = 0;\n /// a.for_each(|x| {\n /// b[i] = x;\n /// i += 1;\n /// });\n /// assert_eq(a, b);\n /// ```\n pub fn for_each<Env>(self, f: fn[Env](T) -> ()) {\n for i in 0..self.len() {\n f(self[i]);\n }\n }\n\n /// Applies a function to each element of this array along with its index.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let mut b = [0; 3];\n /// a.for_eachi(|i, x| {\n /// b[i] = x;\n /// });\n /// assert_eq(a, b);\n /// ```\n pub fn for_eachi<Env>(self, f: fn[Env](u32, T) -> ()) {\n for i in 0..self.len() {\n f(i, self[i]);\n }\n }\n\n /// Applies a function to each element of the array, returning the final accumulated value. The first\n /// parameter is the initial value.\n ///\n /// This is a left fold, so the given function will be applied to the accumulator and first element of\n /// the array, then the second, and so on. For a given call the expected result would be equivalent to:\n ///\n /// ```rust\n /// let a1 = [1];\n /// let a2 = [1, 2];\n /// let a3 = [1, 2, 3];\n ///\n /// let f = |a, b| a - b;\n /// a1.fold(10, f); //=> f(10, 1)\n /// a2.fold(10, f); //=> f(f(10, 1), 2)\n /// a3.fold(10, f); //=> f(f(f(10, 1), 2), 3)\n ///\n /// assert_eq(a3.fold(10, f), 10 - 1 - 2 - 3);\n /// ```\n pub fn fold<U, Env>(self, mut accumulator: U, f: fn[Env](U, T) -> U) -> U {\n for elem in self {\n accumulator = f(accumulator, elem);\n }\n accumulator\n }\n\n /// Same as fold, but uses the first element as the starting element.\n ///\n /// Requires the input array to be non-empty.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr = [1, 2, 3, 4];\n /// let reduced = arr.reduce(|a, b| a + b);\n /// assert(reduced == 10);\n /// }\n /// ```\n pub fn reduce<Env>(self, f: fn[Env](T, T) -> T) -> T {\n let mut accumulator = self[0];\n for i in 1..self.len() {\n accumulator = f(accumulator, self[i]);\n }\n accumulator\n }\n\n /// Returns true if all the elements in this array satisfy the given predicate.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr = [2, 2, 2, 2, 2];\n /// let all = arr.all(|a| a == 2);\n /// assert(all);\n /// }\n /// ```\n pub fn all<Env>(self, predicate: fn[Env](T) -> bool) -> bool {\n let mut ret = true;\n for elem in self {\n ret &= predicate(elem);\n }\n ret\n }\n\n /// Returns true if any of the elements in this array satisfy the given predicate.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr = [2, 2, 2, 2, 5];\n /// let any = arr.any(|a| a == 5);\n /// assert(any);\n /// }\n /// ```\n pub fn any<Env>(self, predicate: fn[Env](T) -> bool) -> bool {\n let mut ret = false;\n for elem in self {\n ret |= predicate(elem);\n }\n ret\n }\n\n /// Concatenates this array with another array.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr1 = [1, 2, 3, 4];\n /// let arr2 = [6, 7, 8, 9, 10, 11];\n /// let concatenated_arr = arr1.concat(arr2);\n /// assert(concatenated_arr == [1, 2, 3, 4, 6, 7, 8, 9, 10, 11]);\n /// }\n /// ```\n pub fn concat<let M: u32>(self, array2: [T; M]) -> [T; N + M] {\n let mut result = [crate::mem::zeroed(); N + M];\n for i in 0..N {\n result[i] = self[i];\n }\n for i in 0..M {\n result[i + N] = array2[i];\n }\n result\n }\n}\n\nimpl<T, let N: u32> [T; N]\nwhere\n T: Ord + Eq,\n{\n /// Returns a new sorted array. The original array remains untouched. Notice that this function will\n /// only work for arrays of fields or integers, not for any arbitrary type. This is because the sorting\n /// logic it uses internally is optimized specifically for these values. If you need a sort function to\n /// sort any type, you should use the [`Self::sort_via`] function.\n ///\n /// Example:\n ///\n /// ```rust\n /// fn main() {\n /// let arr = [42, 32];\n /// let sorted = arr.sort();\n /// assert(sorted == [32, 42]);\n /// }\n /// ```\n pub fn sort(self) -> Self {\n self.sort_via(|a, b| a <= b)\n }\n}\n\nimpl<T, let N: u32> [T; N]\nwhere\n T: Eq,\n{\n /// Returns a new sorted array by sorting it with a custom comparison function.\n /// The original array remains untouched.\n /// The ordering function must return true if the first argument should be sorted to be before the second argument or is equal to the second argument.\n ///\n /// Using this method with an operator like `<` that does not return `true` for equal values will result in an assertion failure for arrays with equal elements.\n ///\n /// Example:\n ///\n /// ```rust\n /// fn main() {\n /// let arr = [42, 32]\n /// let sorted_ascending = arr.sort_via(|a, b| a <= b);\n /// assert(sorted_ascending == [32, 42]); // verifies\n ///\n /// let sorted_descending = arr.sort_via(|a, b| a >= b);\n /// assert(sorted_descending == [32, 42]); // does not verify\n /// }\n /// ```\n pub fn sort_via<Env>(self, ordering: fn[Env](T, T) -> bool) -> Self {\n // Safety: `sorted` array is checked to be:\n // a. a permutation of `input`'s elements\n // b. satisfying the predicate `ordering`\n let sorted = unsafe { quicksort::quicksort(self, ordering) };\n\n if !is_unconstrained() {\n for i in 0..N - 1 {\n assert(\n ordering(sorted[i], sorted[i + 1]),\n \"Array has not been sorted correctly according to `ordering`.\",\n );\n }\n check_shuffle::check_shuffle(self, sorted);\n }\n sorted\n }\n}\n\nimpl<let N: u32> [u8; N] {\n /// Converts a byte array of type `[u8; N]` to a string. Note that this performs no UTF-8 validation -\n /// the given array is interpreted as-is as a string.\n ///\n /// Example:\n ///\n /// ```rust\n /// fn main() {\n /// let hi = [104, 105].as_str_unchecked();\n /// assert_eq(hi, \"hi\");\n /// }\n /// ```\n #[builtin(array_as_str_unchecked)]\n pub fn as_str_unchecked(self) -> str<N> {}\n}\n\nimpl<let N: u32> From<str<N>> for [u8; N] {\n /// Returns an array of the string bytes.\n fn from(s: str<N>) -> Self {\n s.as_bytes()\n }\n}\n\nmod test {\n #[test]\n fn map_empty() {\n assert_eq([].map(|x| x + 1), []);\n }\n\n global arr_with_100_values: [u32; 100] = [\n 42, 123, 87, 93, 48, 80, 50, 5, 104, 84, 70, 47, 119, 66, 71, 121, 3, 29, 42, 118, 2, 54,\n 89, 44, 81, 0, 26, 106, 68, 96, 84, 48, 95, 54, 45, 32, 89, 100, 109, 19, 37, 41, 19, 98,\n 53, 114, 107, 66, 6, 74, 13, 19, 105, 64, 123, 28, 44, 50, 89, 58, 123, 126, 21, 43, 86, 35,\n 21, 62, 82, 0, 108, 120, 72, 72, 62, 80, 12, 71, 70, 86, 116, 73, 38, 15, 127, 81, 30, 8,\n 125, 28, 26, 69, 114, 63, 27, 28, 61, 42, 13, 32,\n ];\n global expected_with_100_values: [u32; 100] = [\n 0, 0, 2, 3, 5, 6, 8, 12, 13, 13, 15, 19, 19, 19, 21, 21, 26, 26, 27, 28, 28, 28, 29, 30, 32,\n 32, 35, 37, 38, 41, 42, 42, 42, 43, 44, 44, 45, 47, 48, 48, 50, 50, 53, 54, 54, 58, 61, 62,\n 62, 63, 64, 66, 66, 68, 69, 70, 70, 71, 71, 72, 72, 73, 74, 80, 80, 81, 81, 82, 84, 84, 86,\n 86, 87, 89, 89, 89, 93, 95, 96, 98, 100, 104, 105, 106, 107, 108, 109, 114, 114, 116, 118,\n 119, 120, 121, 123, 123, 123, 125, 126, 127,\n ];\n fn sort_u32(a: u32, b: u32) -> bool {\n a <= b\n }\n\n #[test]\n fn test_sort() {\n let mut arr: [u32; 7] = [3, 6, 8, 10, 1, 2, 1];\n\n let sorted = arr.sort();\n\n let expected: [u32; 7] = [1, 1, 2, 3, 6, 8, 10];\n assert(sorted == expected);\n }\n\n #[test]\n fn test_sort_100_values() {\n let mut arr: [u32; 100] = [\n 42, 123, 87, 93, 48, 80, 50, 5, 104, 84, 70, 47, 119, 66, 71, 121, 3, 29, 42, 118, 2,\n 54, 89, 44, 81, 0, 26, 106, 68, 96, 84, 48, 95, 54, 45, 32, 89, 100, 109, 19, 37, 41,\n 19, 98, 53, 114, 107, 66, 6, 74, 13, 19, 105, 64, 123, 28, 44, 50, 89, 58, 123, 126, 21,\n 43, 86, 35, 21, 62, 82, 0, 108, 120, 72, 72, 62, 80, 12, 71, 70, 86, 116, 73, 38, 15,\n 127, 81, 30, 8, 125, 28, 26, 69, 114, 63, 27, 28, 61, 42, 13, 32,\n ];\n\n let sorted = arr.sort();\n\n let expected: [u32; 100] = [\n 0, 0, 2, 3, 5, 6, 8, 12, 13, 13, 15, 19, 19, 19, 21, 21, 26, 26, 27, 28, 28, 28, 29, 30,\n 32, 32, 35, 37, 38, 41, 42, 42, 42, 43, 44, 44, 45, 47, 48, 48, 50, 50, 53, 54, 54, 58,\n 61, 62, 62, 63, 64, 66, 66, 68, 69, 70, 70, 71, 71, 72, 72, 73, 74, 80, 80, 81, 81, 82,\n 84, 84, 86, 86, 87, 89, 89, 89, 93, 95, 96, 98, 100, 104, 105, 106, 107, 108, 109, 114,\n 114, 116, 118, 119, 120, 121, 123, 123, 123, 125, 126, 127,\n ];\n assert(sorted == expected);\n }\n\n #[test]\n fn test_sort_100_values_comptime() {\n let sorted = arr_with_100_values.sort();\n assert(sorted == expected_with_100_values);\n }\n\n #[test]\n fn test_sort_via() {\n let mut arr: [u32; 7] = [3, 6, 8, 10, 1, 2, 1];\n\n let sorted = arr.sort_via(sort_u32);\n\n let expected: [u32; 7] = [1, 1, 2, 3, 6, 8, 10];\n assert(sorted == expected);\n }\n\n #[test]\n fn test_sort_via_100_values() {\n let mut arr: [u32; 100] = [\n 42, 123, 87, 93, 48, 80, 50, 5, 104, 84, 70, 47, 119, 66, 71, 121, 3, 29, 42, 118, 2,\n 54, 89, 44, 81, 0, 26, 106, 68, 96, 84, 48, 95, 54, 45, 32, 89, 100, 109, 19, 37, 41,\n 19, 98, 53, 114, 107, 66, 6, 74, 13, 19, 105, 64, 123, 28, 44, 50, 89, 58, 123, 126, 21,\n 43, 86, 35, 21, 62, 82, 0, 108, 120, 72, 72, 62, 80, 12, 71, 70, 86, 116, 73, 38, 15,\n 127, 81, 30, 8, 125, 28, 26, 69, 114, 63, 27, 28, 61, 42, 13, 32,\n ];\n\n let sorted = arr.sort_via(sort_u32);\n\n let expected: [u32; 100] = [\n 0, 0, 2, 3, 5, 6, 8, 12, 13, 13, 15, 19, 19, 19, 21, 21, 26, 26, 27, 28, 28, 28, 29, 30,\n 32, 32, 35, 37, 38, 41, 42, 42, 42, 43, 44, 44, 45, 47, 48, 48, 50, 50, 53, 54, 54, 58,\n 61, 62, 62, 63, 64, 66, 66, 68, 69, 70, 70, 71, 71, 72, 72, 73, 74, 80, 80, 81, 81, 82,\n 84, 84, 86, 86, 87, 89, 89, 89, 93, 95, 96, 98, 100, 104, 105, 106, 107, 108, 109, 114,\n 114, 116, 118, 119, 120, 121, 123, 123, 123, 125, 126, 127,\n ];\n assert(sorted == expected);\n }\n\n #[test]\n fn mapi_empty() {\n assert_eq([].mapi(|i, x| i * x + 1), []);\n }\n\n #[test]\n fn for_each_empty() {\n let empty_array: [Field; 0] = [];\n empty_array.for_each(|_x| assert(false));\n }\n\n #[test]\n fn for_eachi_empty() {\n let empty_array: [Field; 0] = [];\n empty_array.for_eachi(|_i, _x| assert(false));\n }\n\n #[test]\n fn map_example() {\n let a = [1, 2, 3];\n let b = a.map(|a| a * 2);\n assert_eq(b, [2, 4, 6]);\n }\n\n #[test]\n fn mapi_example() {\n let a = [1, 2, 3];\n let b = a.mapi(|i, a| i + a * 2);\n assert_eq(b, [2, 5, 8]);\n }\n\n #[test]\n fn for_each_example() {\n let a = [1, 2, 3];\n let mut b = [0, 0, 0];\n let b_ref = &mut b;\n let mut i = 0;\n let i_ref = &mut i;\n a.for_each(|x| {\n b_ref[*i_ref] = x * 2;\n *i_ref += 1;\n });\n assert_eq(b, [2, 4, 6]);\n assert_eq(i, 3);\n }\n\n #[test]\n fn for_eachi_example() {\n let a = [1, 2, 3];\n let mut b = [0, 0, 0];\n let b_ref = &mut b;\n a.for_eachi(|i, a| { b_ref[i] = i + a * 2; });\n assert_eq(b, [2, 5, 8]);\n }\n\n #[test]\n fn concat() {\n let arr1 = [1, 2, 3, 4];\n let arr2 = [6, 7, 8, 9, 10, 11];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, [1, 2, 3, 4, 6, 7, 8, 9, 10, 11]);\n }\n\n #[test]\n fn concat_zero_length_with_something() {\n let arr1 = [];\n let arr2 = [1];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, [1]);\n }\n\n #[test]\n fn concat_something_with_zero_length() {\n let arr1 = [1];\n let arr2 = [];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, [1]);\n }\n\n #[test]\n fn concat_zero_lengths() {\n let arr1: [Field; 0] = [];\n let arr2: [Field; 0] = [];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, []);\n }\n}\n"
|
|
4577
4577
|
},
|
|
4578
4578
|
"314": {
|
|
4579
4579
|
"path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/address/aztec_address.nr",
|
|
@@ -4633,11 +4633,11 @@
|
|
|
4633
4633
|
},
|
|
4634
4634
|
"43": {
|
|
4635
4635
|
"path": "std/panic.nr",
|
|
4636
|
-
"source": "pub fn panic<T, U
|
|
4636
|
+
"source": "pub fn panic<T, U>(message: T) -> U\nwhere\n T: StringLike,\n{\n assert(false, message);\n crate::mem::zeroed()\n}\n\ntrait StringLike {}\n\nimpl<let N: u32> StringLike for str<N> {}\nimpl<let N: u32, T> StringLike for fmtstr<N, T> {}\n"
|
|
4637
4637
|
},
|
|
4638
4638
|
"5": {
|
|
4639
4639
|
"path": "std/cmp.nr",
|
|
4640
|
-
"source": "use crate::meta::derive_via;\n\n#[derive_via(derive_eq)]\n// docs:start:eq-trait\npub trait Eq {\n fn eq(self, other: Self) -> bool;\n}\n// docs:end:eq-trait\n\n// docs:start:derive_eq\ncomptime fn derive_eq(s: TypeDefinition) -> Quoted {\n let signature = quote { fn eq(_self: Self, _other: Self) -> bool };\n let for_each_field = |name| quote { (_self.$name == _other.$name) };\n let body = |fields| {\n if s.fields_as_written().len() == 0 {\n quote { true }\n } else {\n fields\n }\n };\n crate::meta::make_trait_impl(\n s,\n quote { $crate::cmp::Eq },\n signature,\n for_each_field,\n quote { & },\n body,\n )\n}\n// docs:end:derive_eq\n\nimpl Eq for Field {\n fn eq(self, other: Field) -> bool {\n self == other\n }\n}\n\nimpl Eq for u128 {\n fn eq(self, other: u128) -> bool {\n self == other\n }\n}\nimpl Eq for u64 {\n fn eq(self, other: u64) -> bool {\n self == other\n }\n}\nimpl Eq for u32 {\n fn eq(self, other: u32) -> bool {\n self == other\n }\n}\nimpl Eq for u16 {\n fn eq(self, other: u16) -> bool {\n self == other\n }\n}\nimpl Eq for u8 {\n fn eq(self, other: u8) -> bool {\n self == other\n }\n}\nimpl Eq for u1 {\n fn eq(self, other: u1) -> bool {\n self == other\n }\n}\n\nimpl Eq for i8 {\n fn eq(self, other: i8) -> bool {\n self == other\n }\n}\nimpl Eq for i16 {\n fn eq(self, other: i16) -> bool {\n self == other\n }\n}\nimpl Eq for i32 {\n fn eq(self, other: i32) -> bool {\n self == other\n }\n}\nimpl Eq for i64 {\n fn eq(self, other: i64) -> bool {\n self == other\n }\n}\n\nimpl Eq for () {\n fn eq(_self: Self, _other: ()) -> bool {\n true\n }\n}\nimpl Eq for bool {\n fn eq(self, other: bool) -> bool {\n self == other\n }\n}\n\nimpl<T, let N: u32> Eq for [T; N]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T; N]) -> bool {\n let mut result = true;\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl<T> Eq for [T]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T]) -> bool {\n let mut result = self.len() == other.len();\n if result {\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n }\n result\n }\n}\n\nimpl<let N: u32> Eq for str<N> {\n fn eq(self, other: str<N>) -> bool {\n let self_bytes = self.as_bytes();\n let other_bytes = other.as_bytes();\n self_bytes == other_bytes\n }\n}\n\nimpl<A, B> Eq for (A, B)\nwhere\n A: Eq,\n B: Eq,\n{\n fn eq(self, other: (A, B)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1)\n }\n}\n\nimpl<A, B, C> Eq for (A, B, C)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n{\n fn eq(self, other: (A, B, C)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2)\n }\n}\n\nimpl<A, B, C, D> Eq for (A, B, C, D)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n{\n fn eq(self, other: (A, B, C, D)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3)\n }\n}\n\nimpl<A, B, C, D, E> Eq for (A, B, C, D, E)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n E: Eq,\n{\n fn eq(self, other: (A, B, C, D, E)) -> bool {\n self.0.eq(other.0)\n & self.1.eq(other.1)\n & self.2.eq(other.2)\n & self.3.eq(other.3)\n & self.4.eq(other.4)\n }\n}\n\nimpl Eq for Ordering {\n fn eq(self, other: Ordering) -> bool {\n self.result == other.result\n }\n}\n\n// Noir doesn't have enums yet so we emulate (Lt | Eq | Gt) with a struct\n// that has 3 public functions for constructing the struct.\npub struct Ordering {\n result: Field,\n}\n\nimpl Ordering {\n // Implementation note: 0, 1, and 2 for Lt, Eq, and Gt are built\n // into the compiler, do not change these without also updating\n // the compiler itself!\n pub fn less() -> Ordering {\n Ordering { result: 0 }\n }\n\n pub fn equal() -> Ordering {\n Ordering { result: 1 }\n }\n\n pub fn greater() -> Ordering {\n Ordering { result: 2 }\n }\n}\n\n#[derive_via(derive_ord)]\n// docs:start:ord-trait\npub trait Ord {\n fn cmp(self, other: Self) -> Ordering;\n}\n// docs:end:ord-trait\n\n// docs:start:derive_ord\ncomptime fn derive_ord(s: TypeDefinition) -> Quoted {\n let name = quote { $crate::cmp::Ord };\n let signature = quote { fn cmp(_self: Self, _other: Self) -> $crate::cmp::Ordering };\n let for_each_field = |name| quote {\n if result == $crate::cmp::Ordering::equal() {\n result = _self.$name.cmp(_other.$name);\n }\n };\n let body = |fields| quote {\n let mut result = $crate::cmp::Ordering::equal();\n $fields\n result\n };\n crate::meta::make_trait_impl(s, name, signature, for_each_field, quote {}, body)\n}\n// docs:end:derive_ord\n\n// Note: Field deliberately does not implement Ord\n\nimpl Ord for u128 {\n fn cmp(self, other: u128) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\nimpl Ord for u64 {\n fn cmp(self, other: u64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u32 {\n fn cmp(self, other: u32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u16 {\n fn cmp(self, other: u16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u8 {\n fn cmp(self, other: u8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i8 {\n fn cmp(self, other: i8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i16 {\n fn cmp(self, other: i16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i32 {\n fn cmp(self, other: i32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i64 {\n fn cmp(self, other: i64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for () {\n fn cmp(_self: Self, _other: ()) -> Ordering {\n Ordering::equal()\n }\n}\n\nimpl Ord for bool {\n fn cmp(self, other: bool) -> Ordering {\n if self {\n if other {\n Ordering::equal()\n } else {\n Ordering::greater()\n }\n } else if other {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl<T, let N: u32> Ord for [T; N]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T; N]) -> Ordering {\n let mut result = Ordering::equal();\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl<T> Ord for [T]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T]) -> Ordering {\n let self_len = self.len();\n let other_len = other.len();\n let min_len = if self_len < other_len {\n self_len\n } else {\n other_len\n };\n\n let mut result = Ordering::equal();\n for i in 0..min_len {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n\n if result != Ordering::equal() {\n result\n } else {\n self_len.cmp(other_len)\n }\n }\n}\n\nimpl<A, B> Ord for (A, B)\nwhere\n A: Ord,\n B: Ord,\n{\n fn cmp(self, other: (A, B)) -> Ordering {\n let result = self.0.cmp(other.0);\n\n if result != Ordering::equal() {\n result\n } else {\n self.1.cmp(other.1)\n }\n }\n}\n\nimpl<A, B, C> Ord for (A, B, C)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n{\n fn cmp(self, other: (A, B, C)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n result\n }\n}\n\nimpl<A, B, C, D> Ord for (A, B, C, D)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n{\n fn cmp(self, other: (A, B, C, D)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n result\n }\n}\n\nimpl<A, B, C, D, E> Ord for (A, B, C, D, E)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n E: Ord,\n{\n fn cmp(self, other: (A, B, C, D, E)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n if result == Ordering::equal() {\n result = self.4.cmp(other.4);\n }\n\n result\n }\n}\n\n// Compares and returns the maximum of two values.\n//\n// Returns the second argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::max(1, 2), 2);\n// assert_eq(cmp::max(2, 2), 2);\n// ```\npub fn max<T>(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v1\n } else {\n v2\n }\n}\n\n// Compares and returns the minimum of two values.\n//\n// Returns the first argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::min(1, 2), 1);\n// assert_eq(cmp::min(2, 2), 2);\n// ```\npub fn min<T>(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v2\n } else {\n v1\n }\n}\n\nmod cmp_tests {\n use super::{Eq, max, min, Ord};\n\n #[test]\n fn sanity_check_min() {\n assert_eq(min(0_u64, 1), 0);\n assert_eq(min(0_u64, 0), 0);\n assert_eq(min(1_u64, 1), 1);\n assert_eq(min(255_u8, 0), 0);\n }\n\n #[test]\n fn sanity_check_max() {\n assert_eq(max(0_u64, 1), 1);\n assert_eq(max(0_u64, 0), 0);\n assert_eq(max(1_u64, 1), 1);\n assert_eq(max(255_u8, 0), 255);\n }\n\n #[test]\n fn correctly_handles_unequal_length_slices() {\n let slice_1 = &[0, 1, 2, 3];\n let slice_2 = &[0, 1, 2];\n assert(!slice_1.eq(slice_2));\n }\n\n #[test]\n fn lexicographic_ordering_for_slices() {\n assert(&[2_u32].cmp(&[1_u32, 1_u32, 1_u32]) == super::Ordering::greater());\n assert(&[1_u32, 2_u32].cmp(&[1_u32, 2_u32, 3_u32]) == super::Ordering::less());\n }\n}\n"
|
|
4640
|
+
"source": "use crate::meta::derive_via;\n\n#[derive_via(derive_eq)]\n// docs:start:eq-trait\npub trait Eq {\n fn eq(self, other: Self) -> bool;\n}\n// docs:end:eq-trait\n\n// docs:start:derive_eq\ncomptime fn derive_eq(s: TypeDefinition) -> Quoted {\n let signature = quote { fn eq(_self: Self, _other: Self) -> bool };\n let for_each_field = |name| quote { (_self.$name == _other.$name) };\n let body = |fields| {\n if s.fields_as_written().len() == 0 {\n quote { true }\n } else {\n fields\n }\n };\n crate::meta::make_trait_impl(\n s,\n quote { $crate::cmp::Eq },\n signature,\n for_each_field,\n quote { & },\n body,\n )\n}\n// docs:end:derive_eq\n\nimpl Eq for Field {\n fn eq(self, other: Field) -> bool {\n self == other\n }\n}\n\nimpl Eq for u128 {\n fn eq(self, other: u128) -> bool {\n self == other\n }\n}\nimpl Eq for u64 {\n fn eq(self, other: u64) -> bool {\n self == other\n }\n}\nimpl Eq for u32 {\n fn eq(self, other: u32) -> bool {\n self == other\n }\n}\nimpl Eq for u16 {\n fn eq(self, other: u16) -> bool {\n self == other\n }\n}\nimpl Eq for u8 {\n fn eq(self, other: u8) -> bool {\n self == other\n }\n}\nimpl Eq for u1 {\n fn eq(self, other: u1) -> bool {\n self == other\n }\n}\n\nimpl Eq for i8 {\n fn eq(self, other: i8) -> bool {\n self == other\n }\n}\nimpl Eq for i16 {\n fn eq(self, other: i16) -> bool {\n self == other\n }\n}\nimpl Eq for i32 {\n fn eq(self, other: i32) -> bool {\n self == other\n }\n}\nimpl Eq for i64 {\n fn eq(self, other: i64) -> bool {\n self == other\n }\n}\n\nimpl Eq for () {\n fn eq(_self: Self, _other: ()) -> bool {\n true\n }\n}\nimpl Eq for bool {\n fn eq(self, other: bool) -> bool {\n self == other\n }\n}\n\nimpl<T, let N: u32> Eq for [T; N]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T; N]) -> bool {\n let mut result = true;\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl<T> Eq for [T]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T]) -> bool {\n let mut result = self.len() == other.len();\n if result {\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n }\n result\n }\n}\n\nimpl<let N: u32> Eq for str<N> {\n fn eq(self, other: str<N>) -> bool {\n let self_bytes = self.as_bytes();\n let other_bytes = other.as_bytes();\n self_bytes == other_bytes\n }\n}\n\nimpl<A, B> Eq for (A, B)\nwhere\n A: Eq,\n B: Eq,\n{\n fn eq(self, other: (A, B)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1)\n }\n}\n\nimpl<A, B, C> Eq for (A, B, C)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n{\n fn eq(self, other: (A, B, C)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2)\n }\n}\n\nimpl<A, B, C, D> Eq for (A, B, C, D)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n{\n fn eq(self, other: (A, B, C, D)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3)\n }\n}\n\nimpl<A, B, C, D, E> Eq for (A, B, C, D, E)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n E: Eq,\n{\n fn eq(self, other: (A, B, C, D, E)) -> bool {\n self.0.eq(other.0)\n & self.1.eq(other.1)\n & self.2.eq(other.2)\n & self.3.eq(other.3)\n & self.4.eq(other.4)\n }\n}\n\nimpl Eq for Ordering {\n fn eq(self, other: Ordering) -> bool {\n self.result == other.result\n }\n}\n\n// Noir doesn't have enums yet so we emulate (Lt | Eq | Gt) with a struct\n// that has 3 public functions for constructing the struct.\npub struct Ordering {\n result: Field,\n}\n\nimpl Ordering {\n // Implementation note: 0, 1, and 2 for Lt, Eq, and Gt are built\n // into the compiler, do not change these without also updating\n // the compiler itself!\n pub fn less() -> Ordering {\n Ordering { result: 0 }\n }\n\n pub fn equal() -> Ordering {\n Ordering { result: 1 }\n }\n\n pub fn greater() -> Ordering {\n Ordering { result: 2 }\n }\n}\n\n#[derive_via(derive_ord)]\n// docs:start:ord-trait\npub trait Ord {\n fn cmp(self, other: Self) -> Ordering;\n}\n// docs:end:ord-trait\n\n// docs:start:derive_ord\ncomptime fn derive_ord(s: TypeDefinition) -> Quoted {\n let name = quote { $crate::cmp::Ord };\n let signature = quote { fn cmp(_self: Self, _other: Self) -> $crate::cmp::Ordering };\n let for_each_field = |name| quote {\n if result == $crate::cmp::Ordering::equal() {\n result = _self.$name.cmp(_other.$name);\n }\n };\n let body = |fields| quote {\n let mut result = $crate::cmp::Ordering::equal();\n $fields\n result\n };\n crate::meta::make_trait_impl(s, name, signature, for_each_field, quote {}, body)\n}\n// docs:end:derive_ord\n\n// Note: Field deliberately does not implement Ord\n\nimpl Ord for u128 {\n fn cmp(self, other: u128) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\nimpl Ord for u64 {\n fn cmp(self, other: u64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u32 {\n fn cmp(self, other: u32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u16 {\n fn cmp(self, other: u16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u8 {\n fn cmp(self, other: u8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i8 {\n fn cmp(self, other: i8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i16 {\n fn cmp(self, other: i16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i32 {\n fn cmp(self, other: i32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i64 {\n fn cmp(self, other: i64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for () {\n fn cmp(_self: Self, _other: ()) -> Ordering {\n Ordering::equal()\n }\n}\n\nimpl Ord for bool {\n fn cmp(self, other: bool) -> Ordering {\n if self {\n if other {\n Ordering::equal()\n } else {\n Ordering::greater()\n }\n } else if other {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl<T, let N: u32> Ord for [T; N]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T; N]) -> Ordering {\n let mut result = Ordering::equal();\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl<T> Ord for [T]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T]) -> Ordering {\n let self_len = self.len();\n let other_len = other.len();\n let min_len = if self_len < other_len {\n self_len\n } else {\n other_len\n };\n\n let mut result = Ordering::equal();\n for i in 0..min_len {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n\n if result != Ordering::equal() {\n result\n } else {\n self_len.cmp(other_len)\n }\n }\n}\n\nimpl<A, B> Ord for (A, B)\nwhere\n A: Ord,\n B: Ord,\n{\n fn cmp(self, other: (A, B)) -> Ordering {\n let result = self.0.cmp(other.0);\n\n if result != Ordering::equal() {\n result\n } else {\n self.1.cmp(other.1)\n }\n }\n}\n\nimpl<A, B, C> Ord for (A, B, C)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n{\n fn cmp(self, other: (A, B, C)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n result\n }\n}\n\nimpl<A, B, C, D> Ord for (A, B, C, D)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n{\n fn cmp(self, other: (A, B, C, D)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n result\n }\n}\n\nimpl<A, B, C, D, E> Ord for (A, B, C, D, E)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n E: Ord,\n{\n fn cmp(self, other: (A, B, C, D, E)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n if result == Ordering::equal() {\n result = self.4.cmp(other.4);\n }\n\n result\n }\n}\n\n// Compares and returns the maximum of two values.\n//\n// Returns the second argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::max(1, 2), 2);\n// assert_eq(cmp::max(2, 2), 2);\n// ```\npub fn max<T>(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v1\n } else {\n v2\n }\n}\n\n// Compares and returns the minimum of two values.\n//\n// Returns the first argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::min(1, 2), 1);\n// assert_eq(cmp::min(2, 2), 2);\n// ```\npub fn min<T>(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v2\n } else {\n v1\n }\n}\n\nmod cmp_tests {\n use super::{Eq, max, min, Ord};\n\n #[test]\n fn sanity_check_min() {\n assert_eq(min(0_u64, 1), 0);\n assert_eq(min(0_u64, 0), 0);\n assert_eq(min(1_u64, 1), 1);\n assert_eq(min(255_u8, 0), 0);\n }\n\n #[test]\n fn sanity_check_max() {\n assert_eq(max(0_u64, 1), 1);\n assert_eq(max(0_u64, 0), 0);\n assert_eq(max(1_u64, 1), 1);\n assert_eq(max(255_u8, 0), 255);\n }\n\n #[test]\n fn correctly_handles_unequal_length_vectors() {\n let vector_1 = &[0, 1, 2, 3];\n let vector_2 = &[0, 1, 2];\n assert(!vector_1.eq(vector_2));\n }\n\n #[test]\n fn lexicographic_ordering_for_vectors() {\n assert(&[2_u32].cmp(&[1_u32, 1_u32, 1_u32]) == super::Ordering::greater());\n assert(&[1_u32, 2_u32].cmp(&[1_u32, 2_u32, 3_u32]) == super::Ordering::less());\n }\n}\n"
|
|
4641
4641
|
},
|
|
4642
4642
|
"51": {
|
|
4643
4643
|
"path": "/home/aztec-dev/aztec-packages/noir-projects/noir-contracts/contracts/account/schnorr_single_key_account_contract/src/auth_oracle.nr",
|
|
@@ -4665,7 +4665,7 @@
|
|
|
4665
4665
|
},
|
|
4666
4666
|
"6": {
|
|
4667
4667
|
"path": "std/collections/bounded_vec.nr",
|
|
4668
|
-
"source": "use crate::{cmp::Eq, convert::From, runtime::is_unconstrained, static_assert};\n\n/// A `BoundedVec<T, MaxLen>` is a growable storage similar to a [`Vec`][crate::collections::vec::Vec]`<T>` except that it\n/// is bounded with a maximum possible length. Unlike `Vec`, `BoundedVec` is not implemented\n/// via slices and thus is not subject to the same restrictions slices are (notably, nested\n/// slices - and thus nested vectors as well - are disallowed).\n///\n/// Since a BoundedVec is backed by a normal array under the hood, growing the BoundedVec by\n/// pushing an additional element is also more efficient - the length only needs to be increased\n/// by one.\n///\n/// For these reasons `BoundedVec<T, N>` should generally be preferred over `Vec<T>` when there\n/// is a reasonable maximum bound that can be placed on the vector.\n///\n/// Example:\n///\n/// ```noir\n/// let mut vector: BoundedVec<Field, 10> = BoundedVec::new();\n/// for i in 0..5 {\n/// vector.push(i);\n/// }\n/// assert(vector.len() == 5);\n/// assert(vector.max_len() == 10);\n/// ```\npub struct BoundedVec<T, let MaxLen: u32> {\n storage: [T; MaxLen],\n len: u32,\n}\n\nimpl<T, let MaxLen: u32> BoundedVec<T, MaxLen> {\n /// Creates a new, empty vector of length zero.\n ///\n /// Since this container is backed by an array internally, it still needs an initial value\n /// to give each element. To resolve this, each element is zeroed internally. This value\n /// is guaranteed to be inaccessible unless `get_unchecked` is used.\n ///\n /// Example:\n ///\n /// ```noir\n /// let empty_vector: BoundedVec<Field, 10> = BoundedVec::new();\n /// assert(empty_vector.len() == 0);\n /// ```\n ///\n /// Note that whenever calling `new` the maximum length of the vector should always be specified\n /// via a type signature:\n ///\n /// ```noir\n /// fn good() -> BoundedVec<Field, 10> {\n /// // Ok! MaxLen is specified with a type annotation\n /// let v1: BoundedVec<Field, 3> = BoundedVec::new();\n /// let v2 = BoundedVec::new();\n ///\n /// // Ok! MaxLen is known from the type of `good`'s return value\n /// v2\n /// }\n ///\n /// fn bad() {\n /// // Error: Type annotation needed\n /// // The compiler can't infer `MaxLen` from the following code:\n /// let mut v3 = BoundedVec::new();\n /// v3.push(5);\n /// }\n /// ```\n ///\n /// This defaulting of `MaxLen` (and numeric generics in general) to zero may change in future noir versions\n /// but for now make sure to use type annotations when using bounded vectors. Otherwise, you will receive a\n /// constraint failure at runtime when the vec is pushed to.\n pub fn new() -> Self {\n let zeroed = crate::mem::zeroed();\n BoundedVec { storage: [zeroed; MaxLen], len: 0 }\n }\n\n /// Retrieves an element from the vector at the given index, starting from zero.\n ///\n /// If the given index is equal to or greater than the length of the vector, this\n /// will issue a constraint failure.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn foo<let N: u32>(v: BoundedVec<u32, N>) {\n /// let first = v.get(0);\n /// let last = v.get(v.len() - 1);\n /// assert(first != last);\n /// }\n /// ```\n pub fn get(self, index: u32) -> T {\n assert(index < self.len, \"Attempted to read past end of BoundedVec\");\n self.get_unchecked(index)\n }\n\n /// Retrieves an element from the vector at the given index, starting from zero, without\n /// performing a bounds check.\n ///\n /// Since this function does not perform a bounds check on length before accessing the element,\n /// it is unsafe! Use at your own risk!\n ///\n /// Example:\n ///\n /// ```noir\n /// fn sum_of_first_three<let N: u32>(v: BoundedVec<u32, N>) -> u32 {\n /// // Always ensure the length is larger than the largest\n /// // index passed to get_unchecked\n /// assert(v.len() > 2);\n /// let first = v.get_unchecked(0);\n /// let second = v.get_unchecked(1);\n /// let third = v.get_unchecked(2);\n /// first + second + third\n /// }\n /// ```\n pub fn get_unchecked(self, index: u32) -> T {\n self.storage[index]\n }\n\n /// Writes an element to the vector at the given index, starting from zero.\n ///\n /// If the given index is equal to or greater than the length of the vector, this will issue a constraint failure.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn foo<let N: u32>(v: BoundedVec<u32, N>) {\n /// let first = v.get(0);\n /// assert(first != 42);\n /// v.set(0, 42);\n /// let new_first = v.get(0);\n /// assert(new_first == 42);\n /// }\n /// ```\n pub fn set(&mut self, index: u32, value: T) {\n assert(index < self.len, \"Attempted to write past end of BoundedVec\");\n self.set_unchecked(index, value)\n }\n\n /// Writes an element to the vector at the given index, starting from zero, without performing a bounds check.\n ///\n /// Since this function does not perform a bounds check on length before accessing the element, it is unsafe! Use at your own risk!\n ///\n /// Example:\n ///\n /// ```noir\n /// fn set_unchecked_example() {\n /// let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n /// vec.extend_from_array([1, 2]);\n ///\n /// // Here we're safely writing within the valid range of `vec`\n /// // `vec` now has the value [42, 2]\n /// vec.set_unchecked(0, 42);\n ///\n /// // We can then safely read this value back out of `vec`.\n /// // Notice that we use the checked version of `get` which would prevent reading unsafe values.\n /// assert_eq(vec.get(0), 42);\n ///\n /// // We've now written past the end of `vec`.\n /// // As this index is still within the maximum potential length of `v`,\n /// // it won't cause a constraint failure.\n /// vec.set_unchecked(2, 42);\n /// println(vec);\n ///\n /// // This will write past the end of the maximum potential length of `vec`,\n /// // it will then trigger a constraint failure.\n /// vec.set_unchecked(5, 42);\n /// println(vec);\n /// }\n /// ```\n pub fn set_unchecked(&mut self, index: u32, value: T) {\n self.storage[index] = value;\n }\n\n /// Pushes an element to the end of the vector. This increases the length\n /// of the vector by one.\n ///\n /// Panics if the new length of the vector will be greater than the max length.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<Field, 2> = BoundedVec::new();\n ///\n /// v.push(1);\n /// v.push(2);\n ///\n /// // Panics with failed assertion \"push out of bounds\"\n /// v.push(3);\n /// ```\n pub fn push(&mut self, elem: T) {\n assert(self.len < MaxLen, \"push out of bounds\");\n\n self.storage[self.len] = elem;\n self.len += 1;\n }\n\n /// Returns the current length of this vector\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<Field, 4> = BoundedVec::new();\n /// assert(v.len() == 0);\n ///\n /// v.push(100);\n /// assert(v.len() == 1);\n ///\n /// v.push(200);\n /// v.push(300);\n /// v.push(400);\n /// assert(v.len() == 4);\n ///\n /// let _ = v.pop();\n /// let _ = v.pop();\n /// assert(v.len() == 2);\n /// ```\n pub fn len(self) -> u32 {\n self.len\n }\n\n /// Returns the maximum length of this vector. This is always\n /// equal to the `MaxLen` parameter this vector was initialized with.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<Field, 5> = BoundedVec::new();\n ///\n /// assert(v.max_len() == 5);\n /// v.push(10);\n /// assert(v.max_len() == 5);\n /// ```\n pub fn max_len(_self: BoundedVec<T, MaxLen>) -> u32 {\n MaxLen\n }\n\n /// Returns the internal array within this vector.\n ///\n /// Since arrays in Noir are immutable, mutating the returned storage array will not mutate\n /// the storage held internally by this vector.\n ///\n /// Note that uninitialized elements may be zeroed out!\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<Field, 5> = BoundedVec::new();\n ///\n /// assert(v.storage() == [0, 0, 0, 0, 0]);\n ///\n /// v.push(57);\n /// assert(v.storage() == [57, 0, 0, 0, 0]);\n /// ```\n pub fn storage(self) -> [T; MaxLen] {\n self.storage\n }\n\n /// Pushes each element from the given array to this vector.\n ///\n /// Panics if pushing each element would cause the length of this vector\n /// to exceed the maximum length.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut vec: BoundedVec<Field, 3> = BoundedVec::new();\n /// vec.extend_from_array([2, 4]);\n ///\n /// assert(vec.len == 2);\n /// assert(vec.get(0) == 2);\n /// assert(vec.get(1) == 4);\n /// ```\n pub fn extend_from_array<let Len: u32>(&mut self, array: [T; Len]) {\n let new_len = self.len + array.len();\n assert(new_len <= MaxLen, \"extend_from_array out of bounds\");\n for i in 0..array.len() {\n self.storage[self.len + i] = array[i];\n }\n self.len = new_len;\n }\n\n /// Pushes each element from the given slice to this vector.\n ///\n /// Panics if pushing each element would cause the length of this vector\n /// to exceed the maximum length.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut vec: BoundedVec<Field, 3> = BoundedVec::new();\n /// vec.extend_from_slice(&[2, 4]);\n ///\n /// assert(vec.len == 2);\n /// assert(vec.get(0) == 2);\n /// assert(vec.get(1) == 4);\n /// ```\n pub fn extend_from_slice(&mut self, slice: [T]) {\n let new_len = self.len + slice.len();\n assert(new_len <= MaxLen, \"extend_from_slice out of bounds\");\n for i in 0..slice.len() {\n self.storage[self.len + i] = slice[i];\n }\n self.len = new_len;\n }\n\n /// Pushes each element from the other vector to this vector. The length of\n /// the other vector is left unchanged.\n ///\n /// Panics if pushing each element would cause the length of this vector\n /// to exceed the maximum length.\n ///\n /// ```noir\n /// let mut v1: BoundedVec<Field, 5> = BoundedVec::new();\n /// let mut v2: BoundedVec<Field, 7> = BoundedVec::new();\n ///\n /// v2.extend_from_array([1, 2, 3]);\n /// v1.extend_from_bounded_vec(v2);\n ///\n /// assert(v1.storage() == [1, 2, 3, 0, 0]);\n /// assert(v2.storage() == [1, 2, 3, 0, 0, 0, 0]);\n /// ```\n pub fn extend_from_bounded_vec<let Len: u32>(&mut self, vec: BoundedVec<T, Len>) {\n let append_len = vec.len();\n let new_len = self.len + append_len;\n assert(new_len <= MaxLen, \"extend_from_bounded_vec out of bounds\");\n\n if is_unconstrained() {\n for i in 0..append_len {\n self.storage[self.len + i] = vec.get_unchecked(i);\n }\n } else {\n let mut exceeded_len = false;\n for i in 0..Len {\n exceeded_len |= i == append_len;\n if !exceeded_len {\n self.storage[self.len + i] = vec.get_unchecked(i);\n }\n }\n }\n self.len = new_len;\n }\n\n /// Creates a new vector, populating it with values derived from an array input.\n /// The maximum length of the vector is determined based on the type signature.\n ///\n /// Example:\n ///\n /// ```noir\n /// let bounded_vec: BoundedVec<Field, 10> = BoundedVec::from_array([1, 2, 3])\n /// ```\n pub fn from_array<let Len: u32>(array: [T; Len]) -> Self {\n static_assert(Len <= MaxLen, \"from array out of bounds\");\n let mut vec: BoundedVec<T, MaxLen> = BoundedVec::new();\n vec.extend_from_array(array);\n vec\n }\n\n /// Pops the element at the end of the vector. This will decrease the length\n /// of the vector by one.\n ///\n /// Panics if the vector is empty.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<Field, 2> = BoundedVec::new();\n /// v.push(1);\n /// v.push(2);\n ///\n /// let two = v.pop();\n /// let one = v.pop();\n ///\n /// assert(two == 2);\n /// assert(one == 1);\n ///\n /// // error: cannot pop from an empty vector\n /// let _ = v.pop();\n /// ```\n pub fn pop(&mut self) -> T {\n assert(self.len > 0, \"cannot pop from an empty vector\");\n self.len -= 1;\n\n let elem = self.storage[self.len];\n self.storage[self.len] = crate::mem::zeroed();\n elem\n }\n\n /// Returns true if the given predicate returns true for any element\n /// in this vector.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<u32, 3> = BoundedVec::new();\n /// v.extend_from_array([2, 4, 6]);\n ///\n /// let all_even = !v.any(|elem: u32| elem % 2 != 0);\n /// assert(all_even);\n /// ```\n pub fn any<Env>(self, predicate: fn[Env](T) -> bool) -> bool {\n let mut ret = false;\n if is_unconstrained() {\n for i in 0..self.len {\n ret |= predicate(self.storage[i]);\n }\n } else {\n let mut exceeded_len = false;\n for i in 0..MaxLen {\n exceeded_len |= i == self.len;\n if !exceeded_len {\n ret |= predicate(self.storage[i]);\n }\n }\n }\n ret\n }\n\n /// Creates a new vector of equal size by calling a closure on each element in this vector.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n /// let result = vec.map(|value| value * 2);\n ///\n /// let expected = BoundedVec::from_array([2, 4, 6, 8]);\n /// assert_eq(result, expected);\n /// ```\n pub fn map<U, Env>(self, f: fn[Env](T) -> U) -> BoundedVec<U, MaxLen> {\n let mut ret = BoundedVec::new();\n ret.len = self.len();\n\n if is_unconstrained() {\n for i in 0..self.len() {\n ret.storage[i] = f(self.get_unchecked(i));\n }\n } else {\n for i in 0..MaxLen {\n if i < self.len() {\n ret.storage[i] = f(self.get_unchecked(i));\n }\n }\n }\n\n ret\n }\n\n /// Creates a new vector of equal size by calling a closure on each element\n /// in this vector, along with its index.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n /// let result = vec.mapi(|i, value| i + value * 2);\n ///\n /// let expected = BoundedVec::from_array([2, 5, 8, 11]);\n /// assert_eq(result, expected);\n /// ```\n pub fn mapi<U, Env>(self, f: fn[Env](u32, T) -> U) -> BoundedVec<U, MaxLen> {\n let mut ret = BoundedVec::new();\n ret.len = self.len();\n\n if is_unconstrained() {\n for i in 0..self.len() {\n ret.storage[i] = f(i, self.get_unchecked(i));\n }\n } else {\n for i in 0..MaxLen {\n if i < self.len() {\n ret.storage[i] = f(i, self.get_unchecked(i));\n }\n }\n }\n\n ret\n }\n\n /// Calls a closure on each element in this vector.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n /// let mut result = BoundedVec::<u32, 4>::new();\n /// vec.for_each(|value| result.push(value * 2));\n ///\n /// let expected = BoundedVec::from_array([2, 4, 6, 8]);\n /// assert_eq(result, expected);\n /// ```\n pub fn for_each<Env>(self, f: fn[Env](T) -> ()) {\n if is_unconstrained() {\n for i in 0..self.len() {\n f(self.get_unchecked(i));\n }\n } else {\n for i in 0..MaxLen {\n if i < self.len() {\n f(self.get_unchecked(i));\n }\n }\n }\n }\n\n /// Calls a closure on each element in this vector, along with its index.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n /// let mut result = BoundedVec::<u32, 4>::new();\n /// vec.for_eachi(|i, value| result.push(i + value * 2));\n ///\n /// let expected = BoundedVec::from_array([2, 5, 8, 11]);\n /// assert_eq(result, expected);\n /// ```\n pub fn for_eachi<Env>(self, f: fn[Env](u32, T) -> ()) {\n if is_unconstrained() {\n for i in 0..self.len() {\n f(i, self.get_unchecked(i));\n }\n } else {\n for i in 0..MaxLen {\n if i < self.len() {\n f(i, self.get_unchecked(i));\n }\n }\n }\n }\n\n /// Creates a new BoundedVec from the given array and length.\n /// The given length must be less than or equal to the length of the array.\n ///\n /// This function will zero out any elements at or past index `len` of `array`.\n /// This incurs an extra runtime cost of O(MaxLen). If you are sure your array is\n /// zeroed after that index, you can use [`from_parts_unchecked`][Self::from_parts_unchecked] to remove the extra loop.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_parts([1, 2, 3, 0], 3);\n /// assert_eq(vec.len(), 3);\n /// ```\n pub fn from_parts(mut array: [T; MaxLen], len: u32) -> Self {\n assert(len <= MaxLen);\n let zeroed = crate::mem::zeroed();\n\n if is_unconstrained() {\n for i in len..MaxLen {\n array[i] = zeroed;\n }\n } else {\n for i in 0..MaxLen {\n if i >= len {\n array[i] = zeroed;\n }\n }\n }\n\n BoundedVec { storage: array, len }\n }\n\n /// Creates a new BoundedVec from the given array and length.\n /// The given length must be less than or equal to the length of the array.\n ///\n /// This function is unsafe because it expects all elements past the `len` index\n /// of `array` to be zeroed, but does not check for this internally. Use `from_parts`\n /// for a safe version of this function which does zero out any indices past the\n /// given length. Invalidating this assumption can notably cause `BoundedVec::eq`\n /// to give incorrect results since it will check even elements past `len`.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 0], 3);\n /// assert_eq(vec.len(), 3);\n ///\n /// // invalid use!\n /// let vec1: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 1], 3);\n /// let vec2: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 2], 3);\n ///\n /// // both vecs have length 3 so we'd expect them to be equal, but this\n /// // fails because elements past the length are still checked in eq\n /// assert_eq(vec1, vec2); // fails\n /// ```\n pub fn from_parts_unchecked(array: [T; MaxLen], len: u32) -> Self {\n assert(len <= MaxLen);\n BoundedVec { storage: array, len }\n }\n}\n\nimpl<T, let MaxLen: u32> Eq for BoundedVec<T, MaxLen>\nwhere\n T: Eq,\n{\n fn eq(self, other: BoundedVec<T, MaxLen>) -> bool {\n // TODO: https://github.com/noir-lang/noir/issues/4837\n //\n // We make the assumption that the user has used the proper interface for working with `BoundedVec`s\n // rather than directly manipulating the internal fields as this can result in an inconsistent internal state.\n if self.len == other.len {\n self.storage == other.storage\n } else {\n false\n }\n }\n}\n\nimpl<T, let MaxLen: u32, let Len: u32> From<[T; Len]> for BoundedVec<T, MaxLen> {\n fn from(array: [T; Len]) -> BoundedVec<T, MaxLen> {\n BoundedVec::from_array(array)\n }\n}\n\nmod bounded_vec_tests {\n\n mod get {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test(should_fail_with = \"Attempted to read past end of BoundedVec\")]\n fn panics_when_reading_elements_past_end_of_vec() {\n let vec: BoundedVec<Field, 5> = BoundedVec::new();\n\n let _ = vec.get(0);\n }\n\n #[test(should_fail_with = \"Attempted to read past end of BoundedVec\")]\n fn panics_when_reading_beyond_length() {\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3]);\n let _ = vec.get(3);\n }\n\n #[test]\n fn get_works_within_bounds() {\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3, 4, 5]);\n assert_eq(vec.get(0), 1);\n assert_eq(vec.get(2), 3);\n assert_eq(vec.get(4), 5);\n }\n\n #[test]\n fn get_unchecked_works() {\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3]);\n assert_eq(vec.get_unchecked(0), 1);\n assert_eq(vec.get_unchecked(2), 3);\n }\n\n #[test]\n fn get_unchecked_works_past_len() {\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3]);\n assert_eq(vec.get_unchecked(4), 0);\n }\n }\n\n mod set {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn set_updates_values_properly() {\n let mut vec = BoundedVec::from_array([0, 0, 0, 0, 0]);\n\n vec.set(0, 42);\n assert_eq(vec.storage, [42, 0, 0, 0, 0]);\n\n vec.set(1, 43);\n assert_eq(vec.storage, [42, 43, 0, 0, 0]);\n\n vec.set(2, 44);\n assert_eq(vec.storage, [42, 43, 44, 0, 0]);\n\n vec.set(1, 10);\n assert_eq(vec.storage, [42, 10, 44, 0, 0]);\n\n vec.set(0, 0);\n assert_eq(vec.storage, [0, 10, 44, 0, 0]);\n }\n\n #[test(should_fail_with = \"Attempted to write past end of BoundedVec\")]\n fn panics_when_writing_elements_past_end_of_vec() {\n let mut vec: BoundedVec<Field, 5> = BoundedVec::new();\n vec.set(0, 42);\n }\n\n #[test(should_fail_with = \"Attempted to write past end of BoundedVec\")]\n fn panics_when_setting_beyond_length() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3]);\n vec.set(3, 4);\n }\n\n #[test]\n fn set_unchecked_operations() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n vec.push(1);\n vec.push(2);\n\n vec.set_unchecked(0, 10);\n assert_eq(vec.get(0), 10);\n }\n\n #[test(should_fail_with = \"Attempted to read past end of BoundedVec\")]\n fn set_unchecked_operations_past_len() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n vec.push(1);\n vec.push(2);\n\n vec.set_unchecked(3, 40);\n assert_eq(vec.get(3), 40);\n }\n\n #[test]\n fn set_preserves_other_elements() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3, 4, 5]);\n\n vec.set(2, 30);\n assert_eq(vec.get(0), 1);\n assert_eq(vec.get(1), 2);\n assert_eq(vec.get(2), 30);\n assert_eq(vec.get(3), 4);\n assert_eq(vec.get(4), 5);\n }\n }\n\n mod any {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn returns_false_if_predicate_not_satisfied() {\n let vec: BoundedVec<bool, 4> = BoundedVec::from_array([false, false, false, false]);\n let result = vec.any(|value| value);\n\n assert(!result);\n }\n\n #[test]\n fn returns_true_if_predicate_satisfied() {\n let vec: BoundedVec<bool, 4> = BoundedVec::from_array([false, false, true, true]);\n let result = vec.any(|value| value);\n\n assert(result);\n }\n\n #[test]\n fn returns_false_on_empty_boundedvec() {\n let vec: BoundedVec<bool, 0> = BoundedVec::new();\n let result = vec.any(|value| value);\n\n assert(!result);\n }\n\n #[test]\n fn any_with_complex_predicates() {\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3, 4, 5]);\n\n assert(vec.any(|x| x > 3));\n assert(!vec.any(|x| x > 10));\n assert(vec.any(|x| x % 2 == 0)); // has a even number\n assert(vec.any(|x| x == 3)); // has a specific value\n }\n\n #[test]\n fn any_with_partial_vector() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n vec.push(1);\n vec.push(2);\n\n assert(vec.any(|x| x == 1));\n assert(vec.any(|x| x == 2));\n assert(!vec.any(|x| x == 3));\n }\n }\n\n mod map {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn applies_function_correctly() {\n // docs:start:bounded-vec-map-example\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.map(|value| value * 2);\n // docs:end:bounded-vec-map-example\n let expected = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn applies_function_that_changes_return_type() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.map(|value| (value * 2) as Field);\n let expected: BoundedVec<Field, 4> = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn does_not_apply_function_past_len() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([0, 1]);\n let result = vec.map(|value| if value == 0 { 5 } else { value });\n let expected = BoundedVec::from_array([5, 1]);\n\n assert_eq(result, expected);\n assert_eq(result.get_unchecked(2), 0);\n }\n\n #[test]\n fn map_with_conditional_logic() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n\n let result = vec.map(|x| if x % 2 == 0 { x * 2 } else { x });\n let expected = BoundedVec::from_array([1, 4, 3, 8]);\n assert_eq(result, expected);\n }\n\n #[test]\n fn map_preserves_length() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.map(|x| x * 2);\n\n assert_eq(result.len(), vec.len());\n assert_eq(result.max_len(), vec.max_len());\n }\n\n #[test]\n fn map_on_empty_vector() {\n let vec: BoundedVec<u32, 5> = BoundedVec::new();\n let result = vec.map(|x| x * 2);\n assert_eq(result, vec);\n assert_eq(result.len(), 0);\n assert_eq(result.max_len(), 5);\n }\n }\n\n mod mapi {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn applies_function_correctly() {\n // docs:start:bounded-vec-mapi-example\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.mapi(|i, value| i + value * 2);\n // docs:end:bounded-vec-mapi-example\n let expected = BoundedVec::from_array([2, 5, 8, 11]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn applies_function_that_changes_return_type() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.mapi(|i, value| (i + value * 2) as Field);\n let expected: BoundedVec<Field, 4> = BoundedVec::from_array([2, 5, 8, 11]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn does_not_apply_function_past_len() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([0, 1]);\n let result = vec.mapi(|_, value| if value == 0 { 5 } else { value });\n let expected = BoundedVec::from_array([5, 1]);\n\n assert_eq(result, expected);\n assert_eq(result.get_unchecked(2), 0);\n }\n\n #[test]\n fn mapi_with_index_branching_logic() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n\n let result = vec.mapi(|i, x| if i % 2 == 0 { x * 2 } else { x });\n let expected = BoundedVec::from_array([2, 2, 6, 4]);\n assert_eq(result, expected);\n }\n }\n\n mod for_each {\n use crate::collections::bounded_vec::BoundedVec;\n\n // map in terms of for_each\n fn for_each_map<T, U, Env, let MaxLen: u32>(\n input: BoundedVec<T, MaxLen>,\n f: fn[Env](T) -> U,\n ) -> BoundedVec<U, MaxLen> {\n let mut output = BoundedVec::<U, MaxLen>::new();\n let output_ref = &mut output;\n input.for_each(|x| output_ref.push(f(x)));\n output\n }\n\n #[test]\n fn smoke_test() {\n let mut acc = 0;\n let acc_ref = &mut acc;\n // docs:start:bounded-vec-for-each-example\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([1, 2, 3]);\n vec.for_each(|value| { *acc_ref += value; });\n // docs:end:bounded-vec-for-each-example\n assert_eq(acc, 6);\n }\n\n #[test]\n fn applies_function_correctly() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = for_each_map(vec, |value| value * 2);\n let expected = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn applies_function_that_changes_return_type() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = for_each_map(vec, |value| (value * 2) as Field);\n let expected: BoundedVec<Field, 4> = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn does_not_apply_function_past_len() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([0, 1]);\n let result = for_each_map(vec, |value| if value == 0 { 5 } else { value });\n let expected = BoundedVec::from_array([5, 1]);\n\n assert_eq(result, expected);\n assert_eq(result.get_unchecked(2), 0);\n }\n\n #[test]\n fn for_each_on_empty_vector() {\n let vec: BoundedVec<u32, 5> = BoundedVec::new();\n let mut count = 0;\n let count_ref = &mut count;\n vec.for_each(|_| { *count_ref += 1; });\n assert_eq(count, 0);\n }\n\n #[test]\n fn for_each_with_side_effects() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([1, 2, 3]);\n let mut seen = BoundedVec::<u32, 3>::new();\n let seen_ref = &mut seen;\n vec.for_each(|x| seen_ref.push(x));\n assert_eq(seen, vec);\n }\n }\n\n mod for_eachi {\n use crate::collections::bounded_vec::BoundedVec;\n\n // mapi in terms of for_eachi\n fn for_eachi_mapi<T, U, Env, let MaxLen: u32>(\n input: BoundedVec<T, MaxLen>,\n f: fn[Env](u32, T) -> U,\n ) -> BoundedVec<U, MaxLen> {\n let mut output = BoundedVec::<U, MaxLen>::new();\n let output_ref = &mut output;\n input.for_eachi(|i, x| output_ref.push(f(i, x)));\n output\n }\n\n #[test]\n fn smoke_test() {\n let mut acc = 0;\n let acc_ref = &mut acc;\n // docs:start:bounded-vec-for-eachi-example\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([1, 2, 3]);\n vec.for_eachi(|i, value| { *acc_ref += i * value; });\n // docs:end:bounded-vec-for-eachi-example\n\n // 0 * 1 + 1 * 2 + 2 * 3\n assert_eq(acc, 8);\n }\n\n #[test]\n fn applies_function_correctly() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = for_eachi_mapi(vec, |i, value| i + value * 2);\n let expected = BoundedVec::from_array([2, 5, 8, 11]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn applies_function_that_changes_return_type() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = for_eachi_mapi(vec, |i, value| (i + value * 2) as Field);\n let expected: BoundedVec<Field, 4> = BoundedVec::from_array([2, 5, 8, 11]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn does_not_apply_function_past_len() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([0, 1]);\n let result = for_eachi_mapi(vec, |_, value| if value == 0 { 5 } else { value });\n let expected = BoundedVec::from_array([5, 1]);\n\n assert_eq(result, expected);\n assert_eq(result.get_unchecked(2), 0);\n }\n\n #[test]\n fn for_eachi_on_empty_vector() {\n let vec: BoundedVec<u32, 5> = BoundedVec::new();\n let mut count = 0;\n let count_ref = &mut count;\n vec.for_eachi(|_, _| { *count_ref += 1; });\n assert_eq(count, 0);\n }\n\n #[test]\n fn for_eachi_with_index_tracking() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([10, 20, 30]);\n let mut indices = BoundedVec::<u32, 3>::new();\n let indices_ref = &mut indices;\n vec.for_eachi(|i, _| indices_ref.push(i));\n\n let expected = BoundedVec::from_array([0, 1, 2]);\n assert_eq(indices, expected);\n }\n\n }\n\n mod from_array {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn empty() {\n let empty_array: [Field; 0] = [];\n let bounded_vec = BoundedVec::from_array([]);\n\n assert_eq(bounded_vec.max_len(), 0);\n assert_eq(bounded_vec.len(), 0);\n assert_eq(bounded_vec.storage(), empty_array);\n }\n\n #[test]\n fn equal_len() {\n let array = [1, 2, 3];\n let bounded_vec = BoundedVec::from_array(array);\n\n assert_eq(bounded_vec.max_len(), 3);\n assert_eq(bounded_vec.len(), 3);\n assert_eq(bounded_vec.storage(), array);\n }\n\n #[test]\n fn max_len_greater_then_array_len() {\n let array = [1, 2, 3];\n let bounded_vec: BoundedVec<Field, 10> = BoundedVec::from_array(array);\n\n assert_eq(bounded_vec.max_len(), 10);\n assert_eq(bounded_vec.len(), 3);\n assert_eq(bounded_vec.get(0), 1);\n assert_eq(bounded_vec.get(1), 2);\n assert_eq(bounded_vec.get(2), 3);\n }\n\n #[test(should_fail_with = \"from array out of bounds\")]\n fn max_len_lower_then_array_len() {\n let _: BoundedVec<Field, 2> = BoundedVec::from_array([0; 3]);\n }\n\n #[test]\n fn from_array_preserves_order() {\n let array = [5, 3, 1, 4, 2];\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array(array);\n for i in 0..array.len() {\n assert_eq(vec.get(i), array[i]);\n }\n }\n\n #[test]\n fn from_array_with_different_types() {\n let bool_array = [true, false, true];\n let bool_vec: BoundedVec<bool, 3> = BoundedVec::from_array(bool_array);\n assert_eq(bool_vec.len(), 3);\n assert_eq(bool_vec.get(0), true);\n assert_eq(bool_vec.get(1), false);\n }\n }\n\n mod trait_from {\n use crate::collections::bounded_vec::BoundedVec;\n use crate::convert::From;\n\n #[test]\n fn simple() {\n let array = [1, 2];\n let bounded_vec: BoundedVec<Field, 10> = BoundedVec::from(array);\n\n assert_eq(bounded_vec.max_len(), 10);\n assert_eq(bounded_vec.len(), 2);\n assert_eq(bounded_vec.get(0), 1);\n assert_eq(bounded_vec.get(1), 2);\n }\n }\n\n mod trait_eq {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn empty_equality() {\n let mut bounded_vec1: BoundedVec<Field, 3> = BoundedVec::new();\n let mut bounded_vec2: BoundedVec<Field, 3> = BoundedVec::new();\n\n assert_eq(bounded_vec1, bounded_vec2);\n }\n\n #[test]\n fn inequality() {\n let mut bounded_vec1: BoundedVec<Field, 3> = BoundedVec::new();\n let mut bounded_vec2: BoundedVec<Field, 3> = BoundedVec::new();\n bounded_vec1.push(1);\n bounded_vec2.push(2);\n\n assert(bounded_vec1 != bounded_vec2);\n }\n }\n\n mod from_parts {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn from_parts() {\n // docs:start:from-parts\n let vec: BoundedVec<u32, 4> = BoundedVec::from_parts([1, 2, 3, 0], 3);\n assert_eq(vec.len(), 3);\n\n // Any elements past the given length are zeroed out, so these\n // two BoundedVecs will be completely equal\n let vec1: BoundedVec<u32, 4> = BoundedVec::from_parts([1, 2, 3, 1], 3);\n let vec2: BoundedVec<u32, 4> = BoundedVec::from_parts([1, 2, 3, 2], 3);\n assert_eq(vec1, vec2);\n // docs:end:from-parts\n }\n\n #[test]\n fn from_parts_unchecked() {\n // docs:start:from-parts-unchecked\n let vec: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 0], 3);\n assert_eq(vec.len(), 3);\n\n // invalid use!\n let vec1: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 1], 3);\n let vec2: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 2], 3);\n\n // both vecs have length 3 so we'd expect them to be equal, but this\n // fails because elements past the length are still checked in eq\n assert(vec1 != vec2);\n // docs:end:from-parts-unchecked\n }\n }\n\n mod push_pop {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn push_and_pop_operations() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n\n assert_eq(vec.len(), 0);\n\n vec.push(1);\n assert_eq(vec.len(), 1);\n assert_eq(vec.get(0), 1);\n\n vec.push(2);\n assert_eq(vec.len(), 2);\n assert_eq(vec.get(1), 2);\n\n let popped = vec.pop();\n assert_eq(popped, 2);\n assert_eq(vec.len(), 1);\n\n let popped2 = vec.pop();\n assert_eq(popped2, 1);\n assert_eq(vec.len(), 0);\n }\n\n #[test(should_fail_with = \"push out of bounds\")]\n fn push_to_full_vector() {\n let mut vec: BoundedVec<u32, 2> = BoundedVec::new();\n vec.push(1);\n vec.push(2);\n vec.push(3); // should panic\n }\n\n #[test(should_fail_with = \"cannot pop from an empty vector\")]\n fn pop_from_empty_vector() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n let _ = vec.pop(); // should panic\n }\n\n #[test]\n fn push_pop_cycle() {\n let mut vec: BoundedVec<u32, 3> = BoundedVec::new();\n\n // push to full\n vec.push(1);\n vec.push(2);\n vec.push(3);\n assert_eq(vec.len(), 3);\n\n // pop all\n assert_eq(vec.pop(), 3);\n assert_eq(vec.pop(), 2);\n assert_eq(vec.pop(), 1);\n assert_eq(vec.len(), 0);\n\n // push again\n vec.push(4);\n assert_eq(vec.len(), 1);\n assert_eq(vec.get(0), 4);\n }\n }\n\n mod extend {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn extend_from_array() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n vec.push(1);\n vec.extend_from_array([2, 3]);\n\n assert_eq(vec.len(), 3);\n assert_eq(vec.get(0), 1);\n assert_eq(vec.get(1), 2);\n assert_eq(vec.get(2), 3);\n }\n\n #[test]\n fn extend_from_slice() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n vec.push(1);\n vec.extend_from_slice(&[2, 3]);\n\n assert_eq(vec.len(), 3);\n assert_eq(vec.get(0), 1);\n assert_eq(vec.get(1), 2);\n assert_eq(vec.get(2), 3);\n }\n\n #[test]\n fn extend_from_bounded_vec() {\n let mut vec1: BoundedVec<u32, 5> = BoundedVec::new();\n let mut vec2: BoundedVec<u32, 3> = BoundedVec::new();\n\n vec1.push(1);\n vec2.push(2);\n vec2.push(3);\n\n vec1.extend_from_bounded_vec(vec2);\n\n assert_eq(vec1.len(), 3);\n assert_eq(vec1.get(0), 1);\n assert_eq(vec1.get(1), 2);\n assert_eq(vec1.get(2), 3);\n }\n\n #[test(should_fail_with = \"extend_from_array out of bounds\")]\n fn extend_array_beyond_max_len() {\n let mut vec: BoundedVec<u32, 3> = BoundedVec::new();\n vec.push(1);\n vec.extend_from_array([2, 3, 4]); // should panic\n }\n\n #[test(should_fail_with = \"extend_from_slice out of bounds\")]\n fn extend_slice_beyond_max_len() {\n let mut vec: BoundedVec<u32, 3> = BoundedVec::new();\n vec.push(1);\n vec.extend_from_slice(&[2, 3, 4]); // S]should panic\n }\n\n #[test(should_fail_with = \"extend_from_bounded_vec out of bounds\")]\n fn extend_bounded_vec_beyond_max_len() {\n let mut vec: BoundedVec<u32, 3> = BoundedVec::new();\n let other: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3, 4, 5]);\n vec.extend_from_bounded_vec(other); // should panic\n }\n\n #[test]\n fn extend_with_empty_collections() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n let original_len = vec.len();\n\n vec.extend_from_array([]);\n assert_eq(vec.len(), original_len);\n\n vec.extend_from_slice(&[]);\n assert_eq(vec.len(), original_len);\n\n let empty: BoundedVec<u32, 3> = BoundedVec::new();\n vec.extend_from_bounded_vec(empty);\n assert_eq(vec.len(), original_len);\n }\n }\n\n mod storage {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn storage_consistency() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n\n // test initial storage state\n assert_eq(vec.storage(), [0, 0, 0, 0, 0]);\n\n vec.push(1);\n vec.push(2);\n\n // test storage after modifications\n assert_eq(vec.storage(), [1, 2, 0, 0, 0]);\n\n // storage doesn't change length\n assert_eq(vec.len(), 2);\n assert_eq(vec.max_len(), 5);\n }\n\n #[test]\n fn storage_after_pop() {\n let mut vec: BoundedVec<u32, 3> = BoundedVec::from_array([1, 2, 3]);\n\n let _ = vec.pop();\n // after pop, the last element should be zeroed\n assert_eq(vec.storage(), [1, 2, 0]);\n assert_eq(vec.len(), 2);\n }\n\n #[test]\n fn vector_immutable() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([1, 2, 3]);\n let storage = vec.storage();\n\n assert_eq(storage, [1, 2, 3]);\n\n // Verify that the original vector is unchanged\n assert_eq(vec.len(), 3);\n assert_eq(vec.get(0), 1);\n assert_eq(vec.get(1), 2);\n assert_eq(vec.get(2), 3);\n }\n }\n}\n"
|
|
4668
|
+
"source": "use crate::{cmp::Eq, convert::From, runtime::is_unconstrained, static_assert};\n\n/// A `BoundedVec<T, MaxLen>` is a growable storage similar to a built-in vector except that it\n/// is bounded with a maximum possible length. `BoundedVec` is also not\n/// subject to the same restrictions vectors are (notably, nested vectors are disallowed).\n///\n/// Since a BoundedVec is backed by a normal array under the hood, growing the BoundedVec by\n/// pushing an additional element is also more efficient - the length only needs to be increased\n/// by one.\n///\n/// For these reasons `BoundedVec<T, N>` should generally be preferred over vectors when there\n/// is a reasonable maximum bound that can be placed on the vector.\n///\n/// Example:\n///\n/// ```noir\n/// let mut vector: BoundedVec<Field, 10> = BoundedVec::new();\n/// for i in 0..5 {\n/// vector.push(i);\n/// }\n/// assert(vector.len() == 5);\n/// assert(vector.max_len() == 10);\n/// ```\npub struct BoundedVec<T, let MaxLen: u32> {\n storage: [T; MaxLen],\n len: u32,\n}\n\nimpl<T, let MaxLen: u32> BoundedVec<T, MaxLen> {\n /// Creates a new, empty vector of length zero.\n ///\n /// Since this container is backed by an array internally, it still needs an initial value\n /// to give each element. To resolve this, each element is zeroed internally. This value\n /// is guaranteed to be inaccessible unless `get_unchecked` is used.\n ///\n /// Example:\n ///\n /// ```noir\n /// let empty_vector: BoundedVec<Field, 10> = BoundedVec::new();\n /// assert(empty_vector.len() == 0);\n /// ```\n ///\n /// Note that whenever calling `new` the maximum length of the vector should always be specified\n /// via a type signature:\n ///\n /// ```noir\n /// fn good() -> BoundedVec<Field, 10> {\n /// // Ok! MaxLen is specified with a type annotation\n /// let v1: BoundedVec<Field, 3> = BoundedVec::new();\n /// let v2 = BoundedVec::new();\n ///\n /// // Ok! MaxLen is known from the type of `good`'s return value\n /// v2\n /// }\n ///\n /// fn bad() {\n /// // Error: Type annotation needed\n /// // The compiler can't infer `MaxLen` from the following code:\n /// let mut v3 = BoundedVec::new();\n /// v3.push(5);\n /// }\n /// ```\n ///\n /// This defaulting of `MaxLen` (and numeric generics in general) to zero may change in future noir versions\n /// but for now make sure to use type annotations when using bounded vectors. Otherwise, you will receive a\n /// constraint failure at runtime when the vec is pushed to.\n pub fn new() -> Self {\n let zeroed = crate::mem::zeroed();\n BoundedVec { storage: [zeroed; MaxLen], len: 0 }\n }\n\n /// Retrieves an element from the vector at the given index, starting from zero.\n ///\n /// If the given index is equal to or greater than the length of the vector, this\n /// will issue a constraint failure.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn foo<let N: u32>(v: BoundedVec<u32, N>) {\n /// let first = v.get(0);\n /// let last = v.get(v.len() - 1);\n /// assert(first != last);\n /// }\n /// ```\n pub fn get(self, index: u32) -> T {\n assert(index < self.len, \"Attempted to read past end of BoundedVec\");\n self.get_unchecked(index)\n }\n\n /// Retrieves an element from the vector at the given index, starting from zero, without\n /// performing a bounds check.\n ///\n /// Since this function does not perform a bounds check on length before accessing the element,\n /// it is unsafe! Use at your own risk!\n ///\n /// Example:\n ///\n /// ```noir\n /// fn sum_of_first_three<let N: u32>(v: BoundedVec<u32, N>) -> u32 {\n /// // Always ensure the length is larger than the largest\n /// // index passed to get_unchecked\n /// assert(v.len() > 2);\n /// let first = v.get_unchecked(0);\n /// let second = v.get_unchecked(1);\n /// let third = v.get_unchecked(2);\n /// first + second + third\n /// }\n /// ```\n pub fn get_unchecked(self, index: u32) -> T {\n self.storage[index]\n }\n\n /// Writes an element to the vector at the given index, starting from zero.\n ///\n /// If the given index is equal to or greater than the length of the vector, this will issue a constraint failure.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn foo<let N: u32>(v: BoundedVec<u32, N>) {\n /// let first = v.get(0);\n /// assert(first != 42);\n /// v.set(0, 42);\n /// let new_first = v.get(0);\n /// assert(new_first == 42);\n /// }\n /// ```\n pub fn set(&mut self, index: u32, value: T) {\n assert(index < self.len, \"Attempted to write past end of BoundedVec\");\n self.set_unchecked(index, value)\n }\n\n /// Writes an element to the vector at the given index, starting from zero, without performing a bounds check.\n ///\n /// Since this function does not perform a bounds check on length before accessing the element, it is unsafe! Use at your own risk!\n ///\n /// Example:\n ///\n /// ```noir\n /// fn set_unchecked_example() {\n /// let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n /// vec.extend_from_array([1, 2]);\n ///\n /// // Here we're safely writing within the valid range of `vec`\n /// // `vec` now has the value [42, 2]\n /// vec.set_unchecked(0, 42);\n ///\n /// // We can then safely read this value back out of `vec`.\n /// // Notice that we use the checked version of `get` which would prevent reading unsafe values.\n /// assert_eq(vec.get(0), 42);\n ///\n /// // We've now written past the end of `vec`.\n /// // As this index is still within the maximum potential length of `v`,\n /// // it won't cause a constraint failure.\n /// vec.set_unchecked(2, 42);\n /// println(vec);\n ///\n /// // This will write past the end of the maximum potential length of `vec`,\n /// // it will then trigger a constraint failure.\n /// vec.set_unchecked(5, 42);\n /// println(vec);\n /// }\n /// ```\n pub fn set_unchecked(&mut self, index: u32, value: T) {\n self.storage[index] = value;\n }\n\n /// Pushes an element to the end of the vector. This increases the length\n /// of the vector by one.\n ///\n /// Panics if the new length of the vector will be greater than the max length.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<Field, 2> = BoundedVec::new();\n ///\n /// v.push(1);\n /// v.push(2);\n ///\n /// // Panics with failed assertion \"push out of bounds\"\n /// v.push(3);\n /// ```\n pub fn push(&mut self, elem: T) {\n assert(self.len < MaxLen, \"push out of bounds\");\n\n self.storage[self.len] = elem;\n self.len += 1;\n }\n\n /// Returns the current length of this vector\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<Field, 4> = BoundedVec::new();\n /// assert(v.len() == 0);\n ///\n /// v.push(100);\n /// assert(v.len() == 1);\n ///\n /// v.push(200);\n /// v.push(300);\n /// v.push(400);\n /// assert(v.len() == 4);\n ///\n /// let _ = v.pop();\n /// let _ = v.pop();\n /// assert(v.len() == 2);\n /// ```\n pub fn len(self) -> u32 {\n self.len\n }\n\n /// Returns the maximum length of this vector. This is always\n /// equal to the `MaxLen` parameter this vector was initialized with.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<Field, 5> = BoundedVec::new();\n ///\n /// assert(v.max_len() == 5);\n /// v.push(10);\n /// assert(v.max_len() == 5);\n /// ```\n pub fn max_len(_self: BoundedVec<T, MaxLen>) -> u32 {\n MaxLen\n }\n\n /// Returns the internal array within this vector.\n ///\n /// Since arrays in Noir are immutable, mutating the returned storage array will not mutate\n /// the storage held internally by this vector.\n ///\n /// Note that uninitialized elements may be zeroed out!\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<Field, 5> = BoundedVec::new();\n ///\n /// assert(v.storage() == [0, 0, 0, 0, 0]);\n ///\n /// v.push(57);\n /// assert(v.storage() == [57, 0, 0, 0, 0]);\n /// ```\n pub fn storage(self) -> [T; MaxLen] {\n self.storage\n }\n\n /// Pushes each element from the given array to this vector.\n ///\n /// Panics if pushing each element would cause the length of this vector\n /// to exceed the maximum length.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut vec: BoundedVec<Field, 3> = BoundedVec::new();\n /// vec.extend_from_array([2, 4]);\n ///\n /// assert(vec.len == 2);\n /// assert(vec.get(0) == 2);\n /// assert(vec.get(1) == 4);\n /// ```\n pub fn extend_from_array<let Len: u32>(&mut self, array: [T; Len]) {\n let new_len = self.len + array.len();\n assert(new_len <= MaxLen, \"extend_from_array out of bounds\");\n for i in 0..array.len() {\n self.storage[self.len + i] = array[i];\n }\n self.len = new_len;\n }\n\n /// Pushes each element from the given vector to this vector.\n ///\n /// Panics if pushing each element would cause the length of this vector\n /// to exceed the maximum length.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut vec: BoundedVec<Field, 3> = BoundedVec::new();\n /// vec.extend_from_vector(&[2, 4]);\n ///\n /// assert(vec.len == 2);\n /// assert(vec.get(0) == 2);\n /// assert(vec.get(1) == 4);\n /// ```\n pub fn extend_from_vector(&mut self, vector: [T]) {\n let new_len = self.len + vector.len();\n assert(new_len <= MaxLen, \"extend_from_vector out of bounds\");\n for i in 0..vector.len() {\n self.storage[self.len + i] = vector[i];\n }\n self.len = new_len;\n }\n\n /// Pushes each element from the other vector to this vector. The length of\n /// the other vector is left unchanged.\n ///\n /// Panics if pushing each element would cause the length of this vector\n /// to exceed the maximum length.\n ///\n /// ```noir\n /// let mut v1: BoundedVec<Field, 5> = BoundedVec::new();\n /// let mut v2: BoundedVec<Field, 7> = BoundedVec::new();\n ///\n /// v2.extend_from_array([1, 2, 3]);\n /// v1.extend_from_bounded_vec(v2);\n ///\n /// assert(v1.storage() == [1, 2, 3, 0, 0]);\n /// assert(v2.storage() == [1, 2, 3, 0, 0, 0, 0]);\n /// ```\n pub fn extend_from_bounded_vec<let Len: u32>(&mut self, vec: BoundedVec<T, Len>) {\n let append_len = vec.len();\n let new_len = self.len + append_len;\n assert(new_len <= MaxLen, \"extend_from_bounded_vec out of bounds\");\n\n if is_unconstrained() {\n for i in 0..append_len {\n self.storage[self.len + i] = vec.get_unchecked(i);\n }\n } else {\n let mut exceeded_len = false;\n for i in 0..Len {\n exceeded_len |= i == append_len;\n if !exceeded_len {\n self.storage[self.len + i] = vec.get_unchecked(i);\n }\n }\n }\n self.len = new_len;\n }\n\n /// Creates a new vector, populating it with values derived from an array input.\n /// The maximum length of the vector is determined based on the type signature.\n ///\n /// Example:\n ///\n /// ```noir\n /// let bounded_vec: BoundedVec<Field, 10> = BoundedVec::from_array([1, 2, 3])\n /// ```\n pub fn from_array<let Len: u32>(array: [T; Len]) -> Self {\n static_assert(Len <= MaxLen, \"from array out of bounds\");\n let mut vec: BoundedVec<T, MaxLen> = BoundedVec::new();\n vec.extend_from_array(array);\n vec\n }\n\n /// Pops the element at the end of the vector. This will decrease the length\n /// of the vector by one.\n ///\n /// Panics if the vector is empty.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<Field, 2> = BoundedVec::new();\n /// v.push(1);\n /// v.push(2);\n ///\n /// let two = v.pop();\n /// let one = v.pop();\n ///\n /// assert(two == 2);\n /// assert(one == 1);\n ///\n /// // error: cannot pop from an empty vector\n /// let _ = v.pop();\n /// ```\n pub fn pop(&mut self) -> T {\n assert(self.len > 0, \"cannot pop from an empty vector\");\n self.len -= 1;\n\n let elem = self.storage[self.len];\n self.storage[self.len] = crate::mem::zeroed();\n elem\n }\n\n /// Returns true if the given predicate returns true for any element\n /// in this vector.\n ///\n /// Example:\n ///\n /// ```noir\n /// let mut v: BoundedVec<u32, 3> = BoundedVec::new();\n /// v.extend_from_array([2, 4, 6]);\n ///\n /// let all_even = !v.any(|elem: u32| elem % 2 != 0);\n /// assert(all_even);\n /// ```\n pub fn any<Env>(self, predicate: fn[Env](T) -> bool) -> bool {\n let mut ret = false;\n if is_unconstrained() {\n for i in 0..self.len {\n ret |= predicate(self.storage[i]);\n }\n } else {\n let mut exceeded_len = false;\n for i in 0..MaxLen {\n exceeded_len |= i == self.len;\n if !exceeded_len {\n ret |= predicate(self.storage[i]);\n }\n }\n }\n ret\n }\n\n /// Creates a new vector of equal size by calling a closure on each element in this vector.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n /// let result = vec.map(|value| value * 2);\n ///\n /// let expected = BoundedVec::from_array([2, 4, 6, 8]);\n /// assert_eq(result, expected);\n /// ```\n pub fn map<U, Env>(self, f: fn[Env](T) -> U) -> BoundedVec<U, MaxLen> {\n let mut ret = BoundedVec::new();\n ret.len = self.len();\n\n if is_unconstrained() {\n for i in 0..self.len() {\n ret.storage[i] = f(self.get_unchecked(i));\n }\n } else {\n for i in 0..MaxLen {\n if i < self.len() {\n ret.storage[i] = f(self.get_unchecked(i));\n }\n }\n }\n\n ret\n }\n\n /// Creates a new vector of equal size by calling a closure on each element\n /// in this vector, along with its index.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n /// let result = vec.mapi(|i, value| i + value * 2);\n ///\n /// let expected = BoundedVec::from_array([2, 5, 8, 11]);\n /// assert_eq(result, expected);\n /// ```\n pub fn mapi<U, Env>(self, f: fn[Env](u32, T) -> U) -> BoundedVec<U, MaxLen> {\n let mut ret = BoundedVec::new();\n ret.len = self.len();\n\n if is_unconstrained() {\n for i in 0..self.len() {\n ret.storage[i] = f(i, self.get_unchecked(i));\n }\n } else {\n for i in 0..MaxLen {\n if i < self.len() {\n ret.storage[i] = f(i, self.get_unchecked(i));\n }\n }\n }\n\n ret\n }\n\n /// Calls a closure on each element in this vector.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n /// let mut result = BoundedVec::<u32, 4>::new();\n /// vec.for_each(|value| result.push(value * 2));\n ///\n /// let expected = BoundedVec::from_array([2, 4, 6, 8]);\n /// assert_eq(result, expected);\n /// ```\n pub fn for_each<Env>(self, f: fn[Env](T) -> ()) {\n if is_unconstrained() {\n for i in 0..self.len() {\n f(self.get_unchecked(i));\n }\n } else {\n for i in 0..MaxLen {\n if i < self.len() {\n f(self.get_unchecked(i));\n }\n }\n }\n }\n\n /// Calls a closure on each element in this vector, along with its index.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n /// let mut result = BoundedVec::<u32, 4>::new();\n /// vec.for_eachi(|i, value| result.push(i + value * 2));\n ///\n /// let expected = BoundedVec::from_array([2, 5, 8, 11]);\n /// assert_eq(result, expected);\n /// ```\n pub fn for_eachi<Env>(self, f: fn[Env](u32, T) -> ()) {\n if is_unconstrained() {\n for i in 0..self.len() {\n f(i, self.get_unchecked(i));\n }\n } else {\n for i in 0..MaxLen {\n if i < self.len() {\n f(i, self.get_unchecked(i));\n }\n }\n }\n }\n\n /// Creates a new BoundedVec from the given array and length.\n /// The given length must be less than or equal to the length of the array.\n ///\n /// This function will zero out any elements at or past index `len` of `array`.\n /// This incurs an extra runtime cost of O(MaxLen). If you are sure your array is\n /// zeroed after that index, you can use [`from_parts_unchecked`][Self::from_parts_unchecked] to remove the extra loop.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_parts([1, 2, 3, 0], 3);\n /// assert_eq(vec.len(), 3);\n /// ```\n pub fn from_parts(mut array: [T; MaxLen], len: u32) -> Self {\n assert(len <= MaxLen);\n let zeroed = crate::mem::zeroed();\n\n if is_unconstrained() {\n for i in len..MaxLen {\n array[i] = zeroed;\n }\n } else {\n for i in 0..MaxLen {\n if i >= len {\n array[i] = zeroed;\n }\n }\n }\n\n BoundedVec { storage: array, len }\n }\n\n /// Creates a new BoundedVec from the given array and length.\n /// The given length must be less than or equal to the length of the array.\n ///\n /// This function is unsafe because it expects all elements past the `len` index\n /// of `array` to be zeroed, but does not check for this internally. Use `from_parts`\n /// for a safe version of this function which does zero out any indices past the\n /// given length. Invalidating this assumption can notably cause `BoundedVec::eq`\n /// to give incorrect results since it will check even elements past `len`.\n ///\n /// Example:\n ///\n /// ```noir\n /// let vec: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 0], 3);\n /// assert_eq(vec.len(), 3);\n ///\n /// // invalid use!\n /// let vec1: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 1], 3);\n /// let vec2: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 2], 3);\n ///\n /// // both vecs have length 3 so we'd expect them to be equal, but this\n /// // fails because elements past the length are still checked in eq\n /// assert_eq(vec1, vec2); // fails\n /// ```\n pub fn from_parts_unchecked(array: [T; MaxLen], len: u32) -> Self {\n assert(len <= MaxLen);\n BoundedVec { storage: array, len }\n }\n}\n\nimpl<T, let MaxLen: u32> Eq for BoundedVec<T, MaxLen>\nwhere\n T: Eq,\n{\n fn eq(self, other: BoundedVec<T, MaxLen>) -> bool {\n // TODO: https://github.com/noir-lang/noir/issues/4837\n //\n // We make the assumption that the user has used the proper interface for working with `BoundedVec`s\n // rather than directly manipulating the internal fields as this can result in an inconsistent internal state.\n if self.len == other.len {\n self.storage == other.storage\n } else {\n false\n }\n }\n}\n\nimpl<T, let MaxLen: u32, let Len: u32> From<[T; Len]> for BoundedVec<T, MaxLen> {\n fn from(array: [T; Len]) -> BoundedVec<T, MaxLen> {\n BoundedVec::from_array(array)\n }\n}\n\nmod bounded_vec_tests {\n\n mod get {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test(should_fail_with = \"Attempted to read past end of BoundedVec\")]\n fn panics_when_reading_elements_past_end_of_vec() {\n let vec: BoundedVec<Field, 5> = BoundedVec::new();\n\n let _ = vec.get(0);\n }\n\n #[test(should_fail_with = \"Attempted to read past end of BoundedVec\")]\n fn panics_when_reading_beyond_length() {\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3]);\n let _ = vec.get(3);\n }\n\n #[test]\n fn get_works_within_bounds() {\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3, 4, 5]);\n assert_eq(vec.get(0), 1);\n assert_eq(vec.get(2), 3);\n assert_eq(vec.get(4), 5);\n }\n\n #[test]\n fn get_unchecked_works() {\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3]);\n assert_eq(vec.get_unchecked(0), 1);\n assert_eq(vec.get_unchecked(2), 3);\n }\n\n #[test]\n fn get_unchecked_works_past_len() {\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3]);\n assert_eq(vec.get_unchecked(4), 0);\n }\n }\n\n mod set {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn set_updates_values_properly() {\n let mut vec = BoundedVec::from_array([0, 0, 0, 0, 0]);\n\n vec.set(0, 42);\n assert_eq(vec.storage, [42, 0, 0, 0, 0]);\n\n vec.set(1, 43);\n assert_eq(vec.storage, [42, 43, 0, 0, 0]);\n\n vec.set(2, 44);\n assert_eq(vec.storage, [42, 43, 44, 0, 0]);\n\n vec.set(1, 10);\n assert_eq(vec.storage, [42, 10, 44, 0, 0]);\n\n vec.set(0, 0);\n assert_eq(vec.storage, [0, 10, 44, 0, 0]);\n }\n\n #[test(should_fail_with = \"Attempted to write past end of BoundedVec\")]\n fn panics_when_writing_elements_past_end_of_vec() {\n let mut vec: BoundedVec<Field, 5> = BoundedVec::new();\n vec.set(0, 42);\n }\n\n #[test(should_fail_with = \"Attempted to write past end of BoundedVec\")]\n fn panics_when_setting_beyond_length() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3]);\n vec.set(3, 4);\n }\n\n #[test]\n fn set_unchecked_operations() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n vec.push(1);\n vec.push(2);\n\n vec.set_unchecked(0, 10);\n assert_eq(vec.get(0), 10);\n }\n\n #[test(should_fail_with = \"Attempted to read past end of BoundedVec\")]\n fn set_unchecked_operations_past_len() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n vec.push(1);\n vec.push(2);\n\n vec.set_unchecked(3, 40);\n assert_eq(vec.get(3), 40);\n }\n\n #[test]\n fn set_preserves_other_elements() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3, 4, 5]);\n\n vec.set(2, 30);\n assert_eq(vec.get(0), 1);\n assert_eq(vec.get(1), 2);\n assert_eq(vec.get(2), 30);\n assert_eq(vec.get(3), 4);\n assert_eq(vec.get(4), 5);\n }\n }\n\n mod any {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn returns_false_if_predicate_not_satisfied() {\n let vec: BoundedVec<bool, 4> = BoundedVec::from_array([false, false, false, false]);\n let result = vec.any(|value| value);\n\n assert(!result);\n }\n\n #[test]\n fn returns_true_if_predicate_satisfied() {\n let vec: BoundedVec<bool, 4> = BoundedVec::from_array([false, false, true, true]);\n let result = vec.any(|value| value);\n\n assert(result);\n }\n\n #[test]\n fn returns_false_on_empty_boundedvec() {\n let vec: BoundedVec<bool, 0> = BoundedVec::new();\n let result = vec.any(|value| value);\n\n assert(!result);\n }\n\n #[test]\n fn any_with_complex_predicates() {\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3, 4, 5]);\n\n assert(vec.any(|x| x > 3));\n assert(!vec.any(|x| x > 10));\n assert(vec.any(|x| x % 2 == 0)); // has a even number\n assert(vec.any(|x| x == 3)); // has a specific value\n }\n\n #[test]\n fn any_with_partial_vector() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n vec.push(1);\n vec.push(2);\n\n assert(vec.any(|x| x == 1));\n assert(vec.any(|x| x == 2));\n assert(!vec.any(|x| x == 3));\n }\n }\n\n mod map {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn applies_function_correctly() {\n // docs:start:bounded-vec-map-example\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.map(|value| value * 2);\n // docs:end:bounded-vec-map-example\n let expected = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn applies_function_that_changes_return_type() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.map(|value| (value * 2) as Field);\n let expected: BoundedVec<Field, 4> = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn does_not_apply_function_past_len() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([0, 1]);\n let result = vec.map(|value| if value == 0 { 5 } else { value });\n let expected = BoundedVec::from_array([5, 1]);\n\n assert_eq(result, expected);\n assert_eq(result.get_unchecked(2), 0);\n }\n\n #[test]\n fn map_with_conditional_logic() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n\n let result = vec.map(|x| if x % 2 == 0 { x * 2 } else { x });\n let expected = BoundedVec::from_array([1, 4, 3, 8]);\n assert_eq(result, expected);\n }\n\n #[test]\n fn map_preserves_length() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.map(|x| x * 2);\n\n assert_eq(result.len(), vec.len());\n assert_eq(result.max_len(), vec.max_len());\n }\n\n #[test]\n fn map_on_empty_vector() {\n let vec: BoundedVec<u32, 5> = BoundedVec::new();\n let result = vec.map(|x| x * 2);\n assert_eq(result, vec);\n assert_eq(result.len(), 0);\n assert_eq(result.max_len(), 5);\n }\n }\n\n mod mapi {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn applies_function_correctly() {\n // docs:start:bounded-vec-mapi-example\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.mapi(|i, value| i + value * 2);\n // docs:end:bounded-vec-mapi-example\n let expected = BoundedVec::from_array([2, 5, 8, 11]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn applies_function_that_changes_return_type() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = vec.mapi(|i, value| (i + value * 2) as Field);\n let expected: BoundedVec<Field, 4> = BoundedVec::from_array([2, 5, 8, 11]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn does_not_apply_function_past_len() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([0, 1]);\n let result = vec.mapi(|_, value| if value == 0 { 5 } else { value });\n let expected = BoundedVec::from_array([5, 1]);\n\n assert_eq(result, expected);\n assert_eq(result.get_unchecked(2), 0);\n }\n\n #[test]\n fn mapi_with_index_branching_logic() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n\n let result = vec.mapi(|i, x| if i % 2 == 0 { x * 2 } else { x });\n let expected = BoundedVec::from_array([2, 2, 6, 4]);\n assert_eq(result, expected);\n }\n }\n\n mod for_each {\n use crate::collections::bounded_vec::BoundedVec;\n\n // map in terms of for_each\n fn for_each_map<T, U, Env, let MaxLen: u32>(\n input: BoundedVec<T, MaxLen>,\n f: fn[Env](T) -> U,\n ) -> BoundedVec<U, MaxLen> {\n let mut output = BoundedVec::<U, MaxLen>::new();\n let output_ref = &mut output;\n input.for_each(|x| output_ref.push(f(x)));\n output\n }\n\n #[test]\n fn smoke_test() {\n let mut acc = 0;\n let acc_ref = &mut acc;\n // docs:start:bounded-vec-for-each-example\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([1, 2, 3]);\n vec.for_each(|value| { *acc_ref += value; });\n // docs:end:bounded-vec-for-each-example\n assert_eq(acc, 6);\n }\n\n #[test]\n fn applies_function_correctly() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = for_each_map(vec, |value| value * 2);\n let expected = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn applies_function_that_changes_return_type() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = for_each_map(vec, |value| (value * 2) as Field);\n let expected: BoundedVec<Field, 4> = BoundedVec::from_array([2, 4, 6, 8]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn does_not_apply_function_past_len() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([0, 1]);\n let result = for_each_map(vec, |value| if value == 0 { 5 } else { value });\n let expected = BoundedVec::from_array([5, 1]);\n\n assert_eq(result, expected);\n assert_eq(result.get_unchecked(2), 0);\n }\n\n #[test]\n fn for_each_on_empty_vector() {\n let vec: BoundedVec<u32, 5> = BoundedVec::new();\n let mut count = 0;\n let count_ref = &mut count;\n vec.for_each(|_| { *count_ref += 1; });\n assert_eq(count, 0);\n }\n\n #[test]\n fn for_each_with_side_effects() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([1, 2, 3]);\n let mut seen = BoundedVec::<u32, 3>::new();\n let seen_ref = &mut seen;\n vec.for_each(|x| seen_ref.push(x));\n assert_eq(seen, vec);\n }\n }\n\n mod for_eachi {\n use crate::collections::bounded_vec::BoundedVec;\n\n // mapi in terms of for_eachi\n fn for_eachi_mapi<T, U, Env, let MaxLen: u32>(\n input: BoundedVec<T, MaxLen>,\n f: fn[Env](u32, T) -> U,\n ) -> BoundedVec<U, MaxLen> {\n let mut output = BoundedVec::<U, MaxLen>::new();\n let output_ref = &mut output;\n input.for_eachi(|i, x| output_ref.push(f(i, x)));\n output\n }\n\n #[test]\n fn smoke_test() {\n let mut acc = 0;\n let acc_ref = &mut acc;\n // docs:start:bounded-vec-for-eachi-example\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([1, 2, 3]);\n vec.for_eachi(|i, value| { *acc_ref += i * value; });\n // docs:end:bounded-vec-for-eachi-example\n\n // 0 * 1 + 1 * 2 + 2 * 3\n assert_eq(acc, 8);\n }\n\n #[test]\n fn applies_function_correctly() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = for_eachi_mapi(vec, |i, value| i + value * 2);\n let expected = BoundedVec::from_array([2, 5, 8, 11]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn applies_function_that_changes_return_type() {\n let vec: BoundedVec<u32, 4> = BoundedVec::from_array([1, 2, 3, 4]);\n let result = for_eachi_mapi(vec, |i, value| (i + value * 2) as Field);\n let expected: BoundedVec<Field, 4> = BoundedVec::from_array([2, 5, 8, 11]);\n\n assert_eq(result, expected);\n }\n\n #[test]\n fn does_not_apply_function_past_len() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([0, 1]);\n let result = for_eachi_mapi(vec, |_, value| if value == 0 { 5 } else { value });\n let expected = BoundedVec::from_array([5, 1]);\n\n assert_eq(result, expected);\n assert_eq(result.get_unchecked(2), 0);\n }\n\n #[test]\n fn for_eachi_on_empty_vector() {\n let vec: BoundedVec<u32, 5> = BoundedVec::new();\n let mut count = 0;\n let count_ref = &mut count;\n vec.for_eachi(|_, _| { *count_ref += 1; });\n assert_eq(count, 0);\n }\n\n #[test]\n fn for_eachi_with_index_tracking() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([10, 20, 30]);\n let mut indices = BoundedVec::<u32, 3>::new();\n let indices_ref = &mut indices;\n vec.for_eachi(|i, _| indices_ref.push(i));\n\n let expected = BoundedVec::from_array([0, 1, 2]);\n assert_eq(indices, expected);\n }\n\n }\n\n mod from_array {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn empty() {\n let empty_array: [Field; 0] = [];\n let bounded_vec = BoundedVec::from_array([]);\n\n assert_eq(bounded_vec.max_len(), 0);\n assert_eq(bounded_vec.len(), 0);\n assert_eq(bounded_vec.storage(), empty_array);\n }\n\n #[test]\n fn equal_len() {\n let array = [1, 2, 3];\n let bounded_vec = BoundedVec::from_array(array);\n\n assert_eq(bounded_vec.max_len(), 3);\n assert_eq(bounded_vec.len(), 3);\n assert_eq(bounded_vec.storage(), array);\n }\n\n #[test]\n fn max_len_greater_then_array_len() {\n let array = [1, 2, 3];\n let bounded_vec: BoundedVec<Field, 10> = BoundedVec::from_array(array);\n\n assert_eq(bounded_vec.max_len(), 10);\n assert_eq(bounded_vec.len(), 3);\n assert_eq(bounded_vec.get(0), 1);\n assert_eq(bounded_vec.get(1), 2);\n assert_eq(bounded_vec.get(2), 3);\n }\n\n #[test(should_fail_with = \"from array out of bounds\")]\n fn max_len_lower_then_array_len() {\n let _: BoundedVec<Field, 2> = BoundedVec::from_array([0; 3]);\n }\n\n #[test]\n fn from_array_preserves_order() {\n let array = [5, 3, 1, 4, 2];\n let vec: BoundedVec<u32, 5> = BoundedVec::from_array(array);\n for i in 0..array.len() {\n assert_eq(vec.get(i), array[i]);\n }\n }\n\n #[test]\n fn from_array_with_different_types() {\n let bool_array = [true, false, true];\n let bool_vec: BoundedVec<bool, 3> = BoundedVec::from_array(bool_array);\n assert_eq(bool_vec.len(), 3);\n assert_eq(bool_vec.get(0), true);\n assert_eq(bool_vec.get(1), false);\n }\n }\n\n mod trait_from {\n use crate::collections::bounded_vec::BoundedVec;\n use crate::convert::From;\n\n #[test]\n fn simple() {\n let array = [1, 2];\n let bounded_vec: BoundedVec<Field, 10> = BoundedVec::from(array);\n\n assert_eq(bounded_vec.max_len(), 10);\n assert_eq(bounded_vec.len(), 2);\n assert_eq(bounded_vec.get(0), 1);\n assert_eq(bounded_vec.get(1), 2);\n }\n }\n\n mod trait_eq {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn empty_equality() {\n let mut bounded_vec1: BoundedVec<Field, 3> = BoundedVec::new();\n let mut bounded_vec2: BoundedVec<Field, 3> = BoundedVec::new();\n\n assert_eq(bounded_vec1, bounded_vec2);\n }\n\n #[test]\n fn inequality() {\n let mut bounded_vec1: BoundedVec<Field, 3> = BoundedVec::new();\n let mut bounded_vec2: BoundedVec<Field, 3> = BoundedVec::new();\n bounded_vec1.push(1);\n bounded_vec2.push(2);\n\n assert(bounded_vec1 != bounded_vec2);\n }\n }\n\n mod from_parts {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn from_parts() {\n // docs:start:from-parts\n let vec: BoundedVec<u32, 4> = BoundedVec::from_parts([1, 2, 3, 0], 3);\n assert_eq(vec.len(), 3);\n\n // Any elements past the given length are zeroed out, so these\n // two BoundedVecs will be completely equal\n let vec1: BoundedVec<u32, 4> = BoundedVec::from_parts([1, 2, 3, 1], 3);\n let vec2: BoundedVec<u32, 4> = BoundedVec::from_parts([1, 2, 3, 2], 3);\n assert_eq(vec1, vec2);\n // docs:end:from-parts\n }\n\n #[test]\n fn from_parts_unchecked() {\n // docs:start:from-parts-unchecked\n let vec: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 0], 3);\n assert_eq(vec.len(), 3);\n\n // invalid use!\n let vec1: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 1], 3);\n let vec2: BoundedVec<u32, 4> = BoundedVec::from_parts_unchecked([1, 2, 3, 2], 3);\n\n // both vecs have length 3 so we'd expect them to be equal, but this\n // fails because elements past the length are still checked in eq\n assert(vec1 != vec2);\n // docs:end:from-parts-unchecked\n }\n }\n\n mod push_pop {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn push_and_pop_operations() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n\n assert_eq(vec.len(), 0);\n\n vec.push(1);\n assert_eq(vec.len(), 1);\n assert_eq(vec.get(0), 1);\n\n vec.push(2);\n assert_eq(vec.len(), 2);\n assert_eq(vec.get(1), 2);\n\n let popped = vec.pop();\n assert_eq(popped, 2);\n assert_eq(vec.len(), 1);\n\n let popped2 = vec.pop();\n assert_eq(popped2, 1);\n assert_eq(vec.len(), 0);\n }\n\n #[test(should_fail_with = \"push out of bounds\")]\n fn push_to_full_vector() {\n let mut vec: BoundedVec<u32, 2> = BoundedVec::new();\n vec.push(1);\n vec.push(2);\n vec.push(3); // should panic\n }\n\n #[test(should_fail_with = \"cannot pop from an empty vector\")]\n fn pop_from_empty_vector() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n let _ = vec.pop(); // should panic\n }\n\n #[test]\n fn push_pop_cycle() {\n let mut vec: BoundedVec<u32, 3> = BoundedVec::new();\n\n // push to full\n vec.push(1);\n vec.push(2);\n vec.push(3);\n assert_eq(vec.len(), 3);\n\n // pop all\n assert_eq(vec.pop(), 3);\n assert_eq(vec.pop(), 2);\n assert_eq(vec.pop(), 1);\n assert_eq(vec.len(), 0);\n\n // push again\n vec.push(4);\n assert_eq(vec.len(), 1);\n assert_eq(vec.get(0), 4);\n }\n }\n\n mod extend {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn extend_from_array() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n vec.push(1);\n vec.extend_from_array([2, 3]);\n\n assert_eq(vec.len(), 3);\n assert_eq(vec.get(0), 1);\n assert_eq(vec.get(1), 2);\n assert_eq(vec.get(2), 3);\n }\n\n #[test]\n fn extend_from_vector() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n vec.push(1);\n vec.extend_from_vector(&[2, 3]);\n\n assert_eq(vec.len(), 3);\n assert_eq(vec.get(0), 1);\n assert_eq(vec.get(1), 2);\n assert_eq(vec.get(2), 3);\n }\n\n #[test]\n fn extend_from_bounded_vec() {\n let mut vec1: BoundedVec<u32, 5> = BoundedVec::new();\n let mut vec2: BoundedVec<u32, 3> = BoundedVec::new();\n\n vec1.push(1);\n vec2.push(2);\n vec2.push(3);\n\n vec1.extend_from_bounded_vec(vec2);\n\n assert_eq(vec1.len(), 3);\n assert_eq(vec1.get(0), 1);\n assert_eq(vec1.get(1), 2);\n assert_eq(vec1.get(2), 3);\n }\n\n #[test(should_fail_with = \"extend_from_array out of bounds\")]\n fn extend_array_beyond_max_len() {\n let mut vec: BoundedVec<u32, 3> = BoundedVec::new();\n vec.push(1);\n vec.extend_from_array([2, 3, 4]); // should panic\n }\n\n #[test(should_fail_with = \"extend_from_vector out of bounds\")]\n fn extend_vector_beyond_max_len() {\n let mut vec: BoundedVec<u32, 3> = BoundedVec::new();\n vec.push(1);\n vec.extend_from_vector(&[2, 3, 4]); // S]should panic\n }\n\n #[test(should_fail_with = \"extend_from_bounded_vec out of bounds\")]\n fn extend_bounded_vec_beyond_max_len() {\n let mut vec: BoundedVec<u32, 3> = BoundedVec::new();\n let other: BoundedVec<u32, 5> = BoundedVec::from_array([1, 2, 3, 4, 5]);\n vec.extend_from_bounded_vec(other); // should panic\n }\n\n #[test]\n fn extend_with_empty_collections() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n let original_len = vec.len();\n\n vec.extend_from_array([]);\n assert_eq(vec.len(), original_len);\n\n vec.extend_from_vector(&[]);\n assert_eq(vec.len(), original_len);\n\n let empty: BoundedVec<u32, 3> = BoundedVec::new();\n vec.extend_from_bounded_vec(empty);\n assert_eq(vec.len(), original_len);\n }\n }\n\n mod storage {\n use crate::collections::bounded_vec::BoundedVec;\n\n #[test]\n fn storage_consistency() {\n let mut vec: BoundedVec<u32, 5> = BoundedVec::new();\n\n // test initial storage state\n assert_eq(vec.storage(), [0, 0, 0, 0, 0]);\n\n vec.push(1);\n vec.push(2);\n\n // test storage after modifications\n assert_eq(vec.storage(), [1, 2, 0, 0, 0]);\n\n // storage doesn't change length\n assert_eq(vec.len(), 2);\n assert_eq(vec.max_len(), 5);\n }\n\n #[test]\n fn storage_after_pop() {\n let mut vec: BoundedVec<u32, 3> = BoundedVec::from_array([1, 2, 3]);\n\n let _ = vec.pop();\n // after pop, the last element should be zeroed\n assert_eq(vec.storage(), [1, 2, 0]);\n assert_eq(vec.len(), 2);\n }\n\n #[test]\n fn vector_immutable() {\n let vec: BoundedVec<u32, 3> = BoundedVec::from_array([1, 2, 3]);\n let storage = vec.storage();\n\n assert_eq(storage, [1, 2, 3]);\n\n // Verify that the original vector is unchanged\n assert_eq(vec.len(), 3);\n assert_eq(vec.get(0), 1);\n assert_eq(vec.get(1), 2);\n assert_eq(vec.get(2), 3);\n }\n }\n}\n"
|
|
4669
4669
|
},
|
|
4670
4670
|
"62": {
|
|
4671
4671
|
"path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/capsules/mod.nr",
|
|
@@ -4679,6 +4679,10 @@
|
|
|
4679
4679
|
"path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/context/utility_context.nr",
|
|
4680
4680
|
"source": "use crate::oracle::{execution::get_utility_context, storage::storage_read};\nuse protocol_types::{address::AztecAddress, traits::Packable};\n\n// If you'll modify this struct don't forget to update utility_context.ts as well.\npub struct UtilityContext {\n block_number: u32,\n timestamp: u64,\n contract_address: AztecAddress,\n version: Field,\n chain_id: Field,\n}\n\nimpl UtilityContext {\n pub unconstrained fn new() -> Self {\n get_utility_context()\n }\n\n pub unconstrained fn at(contract_address: AztecAddress) -> Self {\n // We get a context with default contract address, and then we construct the final context with the provided\n // contract address.\n let default_context = get_utility_context();\n\n Self {\n block_number: default_context.block_number,\n timestamp: default_context.timestamp,\n contract_address,\n version: default_context.version,\n chain_id: default_context.chain_id,\n }\n }\n\n pub unconstrained fn at_historical(contract_address: AztecAddress, block_number: u32) -> Self {\n // We get a context with default contract address and block number, and then we construct the final context\n // with the provided contract address and block number.\n let default_context = get_utility_context();\n\n Self {\n block_number,\n timestamp: default_context.timestamp,\n contract_address,\n version: default_context.version,\n chain_id: default_context.chain_id,\n }\n }\n\n pub fn block_number(self) -> u32 {\n self.block_number\n }\n\n pub fn timestamp(self) -> u64 {\n self.timestamp\n }\n\n pub fn this_address(self) -> AztecAddress {\n self.contract_address\n }\n\n pub fn version(self) -> Field {\n self.version\n }\n\n pub fn chain_id(self) -> Field {\n self.chain_id\n }\n\n pub unconstrained fn raw_storage_read<let N: u32>(\n self: Self,\n storage_slot: Field,\n ) -> [Field; N] {\n storage_read(self.this_address(), storage_slot, self.block_number())\n }\n\n pub unconstrained fn storage_read<T>(self, storage_slot: Field) -> T\n where\n T: Packable,\n {\n T::unpack(self.raw_storage_read(storage_slot))\n }\n}\n"
|
|
4681
4681
|
},
|
|
4682
|
+
"77": {
|
|
4683
|
+
"path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/event/event_interface.nr",
|
|
4684
|
+
"source": "use crate::{event::event_selector::EventSelector, messages::logs::event::MAX_EVENT_SERIALIZED_LEN};\nuse protocol_types::{\n constants::DOM_SEP__EVENT_COMMITMENT,\n hash::{poseidon2_hash_with_separator, poseidon2_hash_with_separator_bounded_vec},\n traits::{Serialize, ToField},\n};\n\npub trait EventInterface {\n fn get_event_type_id() -> EventSelector;\n}\n\n/// A private event's commitment is a value stored on-chain which is used to verify that the event was indeed emitted.\n///\n/// It requires a `randomness` value that must be produced alongside the event in order to perform said validation. This\n/// random value prevents attacks in which someone guesses plausible events (e.g. 'Alice transfers to Bob an amount of\n/// 10'), since they will not be able to test for existence of their guessed events without brute-forcing the entire\n/// `Field` space by guessing `randomness` values.\npub fn compute_private_event_commitment<Event>(event: Event, randomness: Field) -> Field\nwhere\n Event: EventInterface + Serialize,\n{\n poseidon2_hash_with_separator(\n [randomness, Event::get_event_type_id().to_field()].concat(event.serialize()),\n DOM_SEP__EVENT_COMMITMENT,\n )\n}\n\n/// Unconstrained variant of [compute_private_event_commitment] which takes the event in serialized form.\n///\n/// This function is unconstrained as the mechanism it uses to compute the commitment would be very inefficient in a\n/// constrained environment (due to the hashing of a dynamically sized array). This is not an issue as it is typically\n/// invoked when processing event messages, which is an unconstrained operation.\npub unconstrained fn compute_private_serialized_event_commitment(\n serialized_event: BoundedVec<Field, MAX_EVENT_SERIALIZED_LEN>,\n randomness: Field,\n event_type_id: Field,\n) -> Field {\n let mut commitment_preimage =\n BoundedVec::<_, 1 + MAX_EVENT_SERIALIZED_LEN>::from_array([randomness, event_type_id]);\n commitment_preimage.extend_from_bounded_vec(serialized_event);\n\n poseidon2_hash_with_separator_bounded_vec(commitment_preimage, DOM_SEP__EVENT_COMMITMENT)\n}\n\nmod test {\n use crate::event::event_interface::{\n compute_private_event_commitment, compute_private_serialized_event_commitment,\n EventInterface,\n };\n use crate::test::mocks::mock_event::MockEvent;\n use protocol_types::traits::{Serialize, ToField};\n\n global VALUE: Field = 7;\n global RANDOMNESS: Field = 10;\n\n #[test]\n unconstrained fn event_commitment_equivalence() {\n let event = MockEvent::new(VALUE).build_event();\n\n assert_eq(\n compute_private_event_commitment(event, RANDOMNESS),\n compute_private_serialized_event_commitment(\n BoundedVec::from_array(event.serialize()),\n RANDOMNESS,\n MockEvent::get_event_type_id().to_field(),\n ),\n );\n }\n}\n"
|
|
4685
|
+
},
|
|
4682
4686
|
"79": {
|
|
4683
4687
|
"path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/event/event_selector.nr",
|
|
4684
4688
|
"source": "use dep::protocol_types::{\n hash::poseidon2_hash_bytes,\n traits::{Deserialize, Empty, FromField, Serialize, ToField},\n};\n\n#[derive(Deserialize, Eq, Serialize)]\npub struct EventSelector {\n // 1st 4-bytes (big-endian leftmost) of abi-encoding of an event.\n inner: u32,\n}\n\nimpl FromField for EventSelector {\n fn from_field(field: Field) -> Self {\n Self { inner: field as u32 }\n }\n}\n\nimpl ToField for EventSelector {\n fn to_field(self) -> Field {\n self.inner as Field\n }\n}\n\nimpl Empty for EventSelector {\n fn empty() -> Self {\n Self { inner: 0 as u32 }\n }\n}\n\nimpl EventSelector {\n pub fn from_u32(value: u32) -> Self {\n Self { inner: value }\n }\n\n pub fn from_signature<let N: u32>(signature: str<N>) -> Self {\n let bytes = signature.as_bytes();\n let hash = poseidon2_hash_bytes(bytes);\n\n // `hash` is automatically truncated to fit within 32 bits.\n EventSelector::from_field(hash)\n }\n\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n}\n"
|