39 _s.
appendList(4) << m_addresses << m_topics << m_earliest << m_latest;
49 bool LogFilter::isRangeFilter()
const 51 if (m_addresses.size())
54 for (
auto const& t: m_topics)
63 if (m_addresses.size())
65 for (
auto const& i: m_addresses)
71 for (
auto const& t: m_topics)
74 for (
auto const& i: t)
83 bool LogFilter::matches(
Block const& _s,
unsigned _i)
const 88 vector<LogBloom> LogFilter::bloomPossibilities()
const 94 for (
auto const& i: m_addresses)
106 for (
auto const& t: m_topics)
110 for (
auto const &j: t)
124 for (
auto const& i: m_addresses)
134 if (!m_addresses.size())
135 for (
auto const& t: m_topics)
139 for (
auto const &j: t)
154 if (matches(_m.
bloom()))
157 if (!m_addresses.empty() && !m_addresses.count(
e.address))
159 for (
unsigned i = 0; i < 4; ++i)
160 if (!m_topics[i].empty() && (
e.topics.size() < i || !m_topics[i].count(
e.topics[i])))
Adapted from code found on http://stackoverflow.com/questions/180947/base64-decode-snippet-in-c Origi...
LogBloom const & bloom() const
std::ostream & operator<<(std::ostream &_out, BlockHeader const &_bi)
bytes const & out() const
Read the byte stream.
std::hash for asio::adress
FixedHash & shiftBloom(FixedHash< M > const &_h)
TransactionReceipt const & receipt(unsigned _i) const
Get the transaction receipt for the transaction of the given index.
bool containsBloom(FixedHash< M > const &_h)
Active model of a block within the block chain.
RLPStream & appendList(size_t _items)
Appends a list.
std::array< h256Hash, 4 > m_topics
uint8_t const size_t const size
bool sha3(bytesConstRef _input, bytesRef o_output)
Calculate SHA3-256 hash of the given input and load it into the given output.
h2048 LogBloom
The log bloom's size (2048-bit).
Class for writing to an RLP bytestream.
std::vector< LogEntry > LogEntries
LogEntries const & log() const