2#include "../bool/bool.hpp"
3#include "../byte_array/byte_array.hpp"
4#include "../circuit_builders/circuit_builders_fwd.hpp"
5#include "../field/field.hpp"
22 packed_byte_array(
const std::vector<field_pt>& input,
const size_t bytes_per_input = BYTES_PER_ELEMENT);
35 std::vector<field_pt> to_unverified_byte_slices(
const size_t bytes_per_slice)
const;
36 std::vector<field_pt> get_limbs()
const {
return limbs; }
38 static packed_byte_array from_field_element_vector(
const std::vector<field_pt>& input);
40 void append(
const field_pt& to_append,
const size_t bytes_to_append);
42 size_t size()
const {
return num_bytes; }
44 Builder* get_context()
const {
return context; }
46 std::string get_value()
const;
49 static constexpr uint64_t BYTES_PER_ELEMENT = 16;
52 std::vector<field_pt> limbs;
57 std::ios_base::fmtflags f(os.flags());
58 os <<
"[" << std::hex << std::setfill(
'0');
59 for (
auto byte : arr.get_value()) {
60 os <<
' ' << std::setw(2) << +(
unsigned char)
byte;
67EXTERN_STDLIB_TYPE(packed_byte_array);
Definition: standard_circuit_builder.hpp:12
Definition: byte_array.hpp:9
Definition: packed_byte_array.hpp:10
Definition: witness.hpp:10
Definition: widget.bench.cpp:13