snarkvm_console_program/data/record/entry/
to_bits.rs1use super::*;
17
18impl<N: Network> ToBits for Entry<N, Plaintext<N>> {
19 fn write_bits_le(&self, vec: &mut Vec<bool>) {
21 match self {
22 Self::Constant(..) => vec.extend_from_slice(&[false, false]),
23 Self::Public(..) => vec.extend_from_slice(&[false, true]),
24 Self::Private(..) => vec.extend_from_slice(&[true, false]),
25 };
26 match self {
27 Self::Constant(plaintext) => plaintext.write_bits_le(vec),
28 Self::Public(plaintext) => plaintext.write_bits_le(vec),
29 Self::Private(plaintext) => plaintext.write_bits_le(vec),
30 };
31 }
32
33 fn write_bits_be(&self, vec: &mut Vec<bool>) {
35 match self {
36 Self::Constant(..) => vec.extend_from_slice(&[false, false]),
37 Self::Public(..) => vec.extend_from_slice(&[false, true]),
38 Self::Private(..) => vec.extend_from_slice(&[true, false]),
39 };
40 match self {
41 Self::Constant(plaintext) => plaintext.write_bits_be(vec),
42 Self::Public(plaintext) => plaintext.write_bits_be(vec),
43 Self::Private(plaintext) => plaintext.write_bits_be(vec),
44 };
45 }
46}
47
48impl<N: Network> ToBits for Entry<N, Ciphertext<N>> {
49 fn write_bits_le(&self, vec: &mut Vec<bool>) {
51 match self {
52 Self::Constant(..) => vec.extend_from_slice(&[false, false]),
53 Self::Public(..) => vec.extend_from_slice(&[false, true]),
54 Self::Private(..) => vec.extend_from_slice(&[true, false]),
55 };
56 match self {
57 Self::Constant(plaintext) => plaintext.write_bits_le(vec),
58 Self::Public(plaintext) => plaintext.write_bits_le(vec),
59 Self::Private(plaintext) => plaintext.write_bits_le(vec),
60 };
61 }
62
63 fn write_bits_be(&self, vec: &mut Vec<bool>) {
65 match self {
66 Self::Constant(..) => vec.extend_from_slice(&[false, false]),
67 Self::Public(..) => vec.extend_from_slice(&[false, true]),
68 Self::Private(..) => vec.extend_from_slice(&[true, false]),
69 };
70 match self {
71 Self::Constant(plaintext) => plaintext.write_bits_be(vec),
72 Self::Public(plaintext) => plaintext.write_bits_be(vec),
73 Self::Private(plaintext) => plaintext.write_bits_be(vec),
74 };
75 }
76}