Skip to content

Commit 2d6ab7c

Browse files
committed
unroll always
1 parent 9cc6ccd commit 2d6ab7c

File tree

4 files changed

+14
-50
lines changed

4 files changed

+14
-50
lines changed

noir-projects/noir-protocol-circuits/crates/blob/src/abis/blob_accumulator.nr

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,7 @@ impl Serialize for BlobAccumulator {
186186
writer.finish()
187187
}
188188

189+
#[inline_always]
189190
fn stream_serialize<let K: u32>(self, writer: &mut Writer<K>) {
190191
writer.write(self.blob_commitments_hash_acc);
191192
writer.write(self.z_acc);
@@ -210,6 +211,7 @@ impl Deserialize for BlobAccumulator {
210211
result
211212
}
212213

214+
#[inline_always]
213215
fn stream_deserialize<let K: u32>(reader: &mut Reader<K>) -> Self {
214216
Self {
215217
blob_commitments_hash_acc: reader.read(),

noir-projects/noir-protocol-circuits/crates/blob/src/abis/final_blob_batching_challenges.nr

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ impl Serialize for FinalBlobBatchingChallenges {
4646
writer.finish()
4747
}
4848

49+
#[inline_always]
4950
fn stream_serialize<let K: u32>(self, writer: &mut Writer<K>) {
5051
writer.write(self.z);
5152
writer.write_array(self.gamma.get_limbs().map(|l| l as Field));
@@ -62,6 +63,7 @@ impl Deserialize for FinalBlobBatchingChallenges {
6263
result
6364
}
6465

66+
#[inline_always]
6567
fn stream_deserialize<let K: u32>(reader: &mut Reader<K>) -> Self {
6668
Self {
6769
z: reader.read(),

noir-projects/noir-protocol-circuits/crates/serde/src/type_impls.nr

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -487,6 +487,7 @@ impl Serialize for EmbeddedCurveScalar {
487487
[self.lo, self.hi]
488488
}
489489

490+
#[inline_always]
490491
fn stream_serialize<let K: u32>(self, writer: &mut Writer<K>) {
491492
writer.write(self.lo);
492493
writer.write(self.hi);
@@ -500,6 +501,7 @@ impl Deserialize for EmbeddedCurveScalar {
500501
Self { lo: fields[0], hi: fields[1] }
501502
}
502503

504+
#[inline_always]
503505
fn stream_deserialize<let K: u32>(reader: &mut Reader<K>) -> Self {
504506
Self { lo: reader.read(), hi: reader.read() }
505507
}
@@ -528,6 +530,7 @@ impl Deserialize for EmbeddedCurvePoint {
528530
Self { x: fields[0], y: fields[1], is_infinite: fields[2] != 0 }
529531
}
530532

533+
#[inline_always]
531534
fn stream_deserialize<let K: u32>(reader: &mut Reader<K>) -> Self {
532535
Self { x: reader.read(), y: reader.read(), is_infinite: reader.read_bool() }
533536
}
@@ -615,6 +618,7 @@ impl Deserialize for () {
615618
result
616619
}
617620

621+
#[inline_always]
618622
fn stream_deserialize<let K: u32>(_reader: &mut Reader<K>) -> Self {
619623
()
620624
}
@@ -719,7 +723,7 @@ comptime fn impl_serialize_for_tuple(_m: Module, length: u32) -> Quoted {
719723
writer.finish()
720724
}
721725

722-
726+
#[inline_always]
723727
fn stream_serialize<let K: u32>(self, writer: &mut $crate::writer::Writer<K>) {
724728

725729
$serialized_fields
@@ -735,8 +739,8 @@ comptime fn impl_serialize_for_tuple(_m: Module, length: u32) -> Quoted {
735739
reader.finish();
736740
result
737741
}
738-
739-
742+
743+
#[inline_always]
740744
fn stream_deserialize<let K: u32>(reader: &mut $crate::reader::Reader<K>) -> Self {
741745
$deserialized_fields
742746
($deserialize_results)
@@ -759,6 +763,7 @@ where
759763
writer.finish()
760764
}
761765

766+
#[inline_always]
762767
fn stream_serialize<let K: u32>(self, writer: &mut Writer<K>) {
763768
self.0.stream_serialize(writer);
764769
}
@@ -777,6 +782,7 @@ where
777782
result
778783
}
779784

785+
#[inline_always]
780786
fn stream_deserialize<let K: u32>(reader: &mut Reader<K>) -> Self {
781787
(<T1 as Deserialize>::stream_deserialize(reader),)
782788
}

noir-projects/noir-protocol-circuits/crates/types/src/meta/mod.nr

Lines changed: 1 addition & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -322,15 +322,6 @@ mod test {
322322
pub length: u32,
323323
}
324324

325-
#[test]
326-
fn serde_on_empty() {
327-
let original = Empty {};
328-
let serialized = original.serialize();
329-
assert_eq(serialized, [], "Serialized does not match empty array");
330-
let deserialized = Empty::deserialize(serialized);
331-
assert_eq(deserialized, original, "Deserialized does not match original");
332-
}
333-
334325
#[test]
335326
fn packable_on_empty() {
336327
let original = Empty {};
@@ -341,53 +332,16 @@ mod test {
341332
}
342333

343334
#[test]
344-
fn serde_on_smol() {
335+
fn packable_on_smol() {
345336
let smol = Smol { a: 1, b: 2 };
346337
let serialized = smol.serialize();
347338
assert(serialized == [1, 2], serialized);
348-
let deserialized = Smol::deserialize(serialized);
349-
assert(deserialized == smol);
350339

351340
// None of the struct members implements the `Packable` trait so the packed and serialized data should be the same
352341
let packed = smol.pack();
353342
assert_eq(packed, serialized, "Packed does not match serialized");
354343
}
355344

356-
#[test]
357-
fn serde_on_has_array() {
358-
let has_array = HasArray { a: [1, 2], b: true };
359-
let serialized = has_array.serialize();
360-
assert(serialized == [1, 2, 1], serialized);
361-
let deserialized = HasArray::deserialize(serialized);
362-
assert(deserialized == has_array);
363-
}
364-
365-
#[test]
366-
fn serde_on_fancier() {
367-
let fancier =
368-
Fancier { a: Smol { a: 1, b: 2 }, b: [0, 1], c: [1, 2, 3], d: "metaprogramming!" };
369-
let serialized = fancier.serialize();
370-
assert(
371-
serialized
372-
== [
373-
1, 2, 0, 1, 1, 2, 3, 0x6d, 0x65, 0x74, 0x61, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61,
374-
0x6d, 0x6d, 0x69, 0x6e, 0x67, 0x21,
375-
],
376-
serialized,
377-
);
378-
let deserialized = Fancier::deserialize(serialized);
379-
assert(deserialized == fancier);
380-
}
381-
382-
#[test]
383-
fn serde_on_contains_array_with_generics() {
384-
let struct_with_array_of_generics = HasArrayWithGenerics { fields: [1, 2, 3], length: 3 };
385-
let serialized = struct_with_array_of_generics.serialize();
386-
assert(serialized == [1, 2, 3, 3], serialized);
387-
let deserialized = HasArrayWithGenerics::deserialize(serialized);
388-
assert(deserialized == struct_with_array_of_generics);
389-
}
390-
391345
#[test]
392346
fn packable_on_contains_array_with_generics() {
393347
let struct_with_array_of_generics = HasArrayWithGenerics { fields: [1, 2, 3], length: 3 };

0 commit comments

Comments
 (0)