Zeth - Zerocash on Ethereum  0.8
Reference implementation of the Zeth protocol by Clearmatics
Classes | Namespaces | Typedefs | Functions
bits.hpp File Reference
#include "libzeth/core/include_libsnark.hpp"
#include <array>
#include <iostream>
#include <stddef.h>
#include <vector>
#include "libzeth/core/bits.tcc"
Include dependency graph for bits.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  libzeth::bits< numBits >
 Generic class representing a bit-array of a specific size. More...
 
class  libzeth::bits< numBits >
 Generic class representing a bit-array of a specific size. More...
 

Namespaces

 libzeth
 

Typedefs

using libzeth::bits32 = bits< 32 >
 32-bit array More...
 
using libzeth::bits64 = bits< 64 >
 64-bit array More...
 
using libzeth::bits256 = bits< 256 >
 
using libzeth::bits384 = bits< 384 >
 
template<size_t TreeDepth>
using libzeth::bits_addr = bits< TreeDepth >
 

Functions

template<size_t numBits>
bits< numBits > libzeth::bits_xor (const bits< numBits > &a, const bits< numBits > &b)
 XOR two binary strings of the same length. More...
 
template<size_t numBits>
bits< numBits > libzeth::bits_add (const bits< numBits > &a, const bits< numBits > &b, bool with_carry=false)
 Sum 2 binary strings with or without carry. More...
 
std::vector< bool > libzeth::bit_vector_from_hex (const std::string &hex_str)
 
std::vector< bool > libzeth::bit_vector_from_size_t_le (size_t x)
 Returns the little endian binary encoding of the integer x. More...
 
std::vector< bool > libzeth::bit_vector_from_size_t_be (size_t x)
 Returns the big endian binary encoding of the integer x. More...
 
void libzeth::bit_vector_write_string (const std::vector< bool > &bits, std::ostream &out_s)