Ethereum  PoC-8
The C++ Implementation of Ethereum
dev Namespace Reference

Namespaces

 bzz
 
 con
 
 crypto
 
 db
 
 eth
 
 p2p
 
 rmd160
 
 shh
 
 test
 

Classes

class  concurrent_queue
 
struct  Converter
 
struct  Converter< bigint >
 
struct  Converter< bytes >
 
struct  Converter< FixedHash< N > >
 
struct  Converter< std::array< T, N > >
 
struct  Converter< std::pair< T, U > >
 
struct  Converter< std::set< T > >
 
struct  Converter< std::string >
 
struct  Converter< std::unordered_set< T > >
 
struct  Converter< std::vector< T > >
 
struct  Converter< u160 >
 
struct  Converter< u256 >
 
struct  Converter< uint16_t >
 
struct  Converter< uint32_t >
 
struct  Converter< uint64_t >
 
struct  Converter< uint8_t >
 
class  EnforceRefs
 
struct  Exception
 Base class for all exceptions. More...
 
class  ExitHandler
 
class  FatGenericTrieDB
 
class  FixedHash
 
struct  GenericGuardBool
 
class  GenericTrieDB
 Merkle Patricia Tree "Trie": a modifed base-16 Radix tree. This version uses a database backend. Usage: More...
 
struct  GenericUnguardBool
 
struct  GenericUnguardSharedBool
 
class  HashedGenericTrieDB
 
class  HasInvariants
 Inheritable for classes that have invariants. More...
 
struct  intTraits
 
struct  intTraits< bigint >
 
struct  intTraits< u160 >
 
struct  intTraits< u256 >
 
struct  InvalidTrie
 
class  InvariantChecker
 RAII checker for invariant assertions. More...
 
class  KeyPair
 
class  NetworkFace
 
struct  NibbleSlice
 
class  Notified
 
class  OverlayDB
 
class  RangeMask
 
class  RLP
 
struct  RLPException
 Base class for all RLP exceptions. More...
 
class  RLPStream
 Class for writing to an RLP bytestream. More...
 
class  ScopeGuard
 RAII utility class whose destructor calls a given function. More...
 
class  SecretStore
 
class  secure_vector
 
class  SecureFixedHash
 
struct  SignatureStruct
 
class  SpecificTrieDB
 
class  StateCacheDB
 
struct  StaticLog2
 Compile-time calculation of Log2 of constant values. More...
 
struct  StaticLog2< 1 >
 
struct  StreamOut
 
struct  StreamOut< uint8_t >
 
class  Timer
 
class  TimerHelper
 Simple scope-based timer helper. More...
 
class  TransientDirectory
 temporary directory implementation It creates temporary directory in the given path. On dealloc it removes the directory More...
 
class  vector_ref
 
class  WebThreeDirect
 Main API hub for interfacing with Web 3 components. This doesn't do any local multiplexing, so you can only have one running on any given machine for the provided DB path. More...
 
class  Worker
 

Typedefs

using Address = h160
 
using Addresses = h160s
 A vector of Ethereum addresses. More...
 
using AddressHash = std::unordered_set< h160 >
 A hash set of Ethereum addresses. More...
 
using errinfo_comment = boost::error_info< struct tag_comment, std::string >
 
using bytes = std::vector< byte >
 
using bytesRef = vector_ref< byte >
 
using bytesConstRef = vector_ref< byte const >
 
using bytesSec = secure_vector< byte >
 
using bigint = boost::multiprecision::number< boost::multiprecision::cpp_int_backend<> >
 
using u64 = boost::multiprecision::number< boost::multiprecision::cpp_int_backend< 64, 64, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void > >
 
using u128 = boost::multiprecision::number< boost::multiprecision::cpp_int_backend< 128, 128, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void > >
 
using u256 = boost::multiprecision::number< boost::multiprecision::cpp_int_backend< 256, 256, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void > >
 
using s256 = boost::multiprecision::number< boost::multiprecision::cpp_int_backend< 256, 256, boost::multiprecision::signed_magnitude, boost::multiprecision::unchecked, void > >
 
using u160 = boost::multiprecision::number< boost::multiprecision::cpp_int_backend< 160, 160, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void > >
 
using s160 = boost::multiprecision::number< boost::multiprecision::cpp_int_backend< 160, 160, boost::multiprecision::signed_magnitude, boost::multiprecision::unchecked, void > >
 
using u512 = boost::multiprecision::number< boost::multiprecision::cpp_int_backend< 512, 512, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void > >
 
using s512 = boost::multiprecision::number< boost::multiprecision::cpp_int_backend< 512, 512, boost::multiprecision::signed_magnitude, boost::multiprecision::unchecked, void > >
 
using u256s = std::vector< u256 >
 
using u160s = std::vector< u160 >
 
using u256Set = std::set< u256 >
 
using u160Set = std::set< u160 >
 
using StringMap = std::map< std::string, std::string >
 
using BytesMap = std::map< bytes, bytes >
 
using u256Map = std::map< u256, u256 >
 
using HexMap = std::map< bytes, bytes >
 
using StringHashMap = std::unordered_map< std::string, std::string >
 
using u256HashMap = std::unordered_map< u256, u256 >
 
using strings = std::vector< std::string >
 
using errinfo_invalidSymbol = boost::error_info< struct tag_invalidSymbol, char >
 
using errinfo_wrongAddress = boost::error_info< struct tag_address, std::string >
 
using errinfo_required = boost::error_info< struct tag_required, bigint >
 
using errinfo_got = boost::error_info< struct tag_got, bigint >
 
using errinfo_min = boost::error_info< struct tag_min, bigint >
 
using errinfo_max = boost::error_info< struct tag_max, bigint >
 
using RequirementError = boost::tuple< errinfo_required, errinfo_got >
 
using RequirementErrorComment = boost::tuple< errinfo_required, errinfo_got, errinfo_comment >
 
using errinfo_hash256 = boost::error_info< struct tag_hash, h256 >
 
using errinfo_required_h256 = boost::error_info< struct tag_required_h256, h256 >
 
using errinfo_got_h256 = boost::error_info< struct tag_get_h256, h256 >
 
using Hash256RequirementError = boost::tuple< errinfo_required_h256, errinfo_got_h256 >
 
using errinfo_extraData = boost::error_info< struct tag_extraData, bytes >
 
using errinfo_externalFunction = boost::errinfo_api_function
 
using errinfo_interface = boost::error_info< struct tag_interface, std::string >
 
using errinfo_path = boost::error_info< struct tag_path, std::string >
 
using errinfo_nodeID = boost::error_info< struct tag_nodeID, h512 >
 
using h2048 = FixedHash< 256 >
 
using h1024 = FixedHash< 128 >
 
using h520 = FixedHash< 65 >
 
using h512 = FixedHash< 64 >
 
using h256 = FixedHash< 32 >
 
using h160 = FixedHash< 20 >
 
using h128 = FixedHash< 16 >
 
using h64 = FixedHash< 8 >
 
using h512s = std::vector< h512 >
 
using h256s = std::vector< h256 >
 
using h160s = std::vector< h160 >
 
using h256Set = std::set< h256 >
 
using h160Set = std::set< h160 >
 
using h256Hash = std::unordered_set< h256 >
 
using h160Hash = std::unordered_set< h160 >
 
using Mutex = std::mutex
 
using RecursiveMutex = std::recursive_mutex
 
using SharedMutex = boost::shared_mutex
 
using Guard = std::lock_guard< std::mutex >
 
using UniqueGuard = std::unique_lock< std::mutex >
 
using RecursiveGuard = std::lock_guard< std::recursive_mutex >
 
using ReadGuard = boost::shared_lock< boost::shared_mutex >
 
using UpgradableGuard = boost::upgrade_lock< boost::shared_mutex >
 
using UpgradeGuard = boost::upgrade_to_unique_lock< boost::shared_mutex >
 
using WriteGuard = boost::unique_lock< boost::shared_mutex >
 
using JsonTypeSet = std::set< json_spirit::Value_type >
 
using JsonFieldOptions = std::pair< JsonTypeSet, JsonFieldPresence >
 
using Logger = boost::log::sources::severity_channel_logger<>
 
using UnsignedRange = std::pair< unsigned, unsigned >
 
using UnsignedRanges = std::vector< UnsignedRange >
 
template<class KeyType , class DB >
using TrieDB = SpecificTrieDB< GenericTrieDB< DB >, KeyType >
 
using Secret = SecureFixedHash< 32 >
 
using Public = h512
 
using PublicCompressed = FixedHash< 33 >
 
using Signature = h520
 
using Secrets = std::vector< Secret >
 A vector of secrets. More...
 

Enumerations

enum  WithExisting : int { WithExisting::Trust = 0, WithExisting::Verify, WithExisting::Rescue, WithExisting::Kill }
 
enum  WhenError { WhenError::DontThrow = 0, WhenError::Throw = 1 }
 
enum  OnFailed { OnFailed::InterpretRaw, OnFailed::Empty, OnFailed::Throw }
 
enum  JsonFieldPresence { JsonFieldPresence::Required, JsonFieldPresence::Optional }
 
enum  Verbosity {
  VerbositySilent = -1, VerbosityError = 0, VerbosityWarning = 1, VerbosityInfo = 2,
  VerbosityDebug = 3, VerbosityTrace = 4
}
 
enum  Verification { Verification::Skip, Verification::Normal }
 
enum  IfRunning { IfRunning::Fail, IfRunning::Join, IfRunning::Detach }
 
enum  WorkerState {
  WorkerState::Starting, WorkerState::Started, WorkerState::Stopping, WorkerState::Stopped,
  WorkerState::Killing
}
 
enum  KDF { KDF::PBKDF2_SHA256, KDF::Scrypt }
 
enum  WorkState { Active = 0, Deleting, Deleted }
 

Functions

bool assertAux (bool _a, char const *_aStr, unsigned _line, char const *_file, char const *_func)
 
template<class A , class B >
bool assertEqualAux (A const &_a, B const &_b, char const *_aStr, char const *_bStr, unsigned _line, char const *_file, char const *_func)
 
template<class _ExceptionType >
void assertThrowAux (bool _condition, ::std::string const &_errorDescription, unsigned _line, char const *_file, char const *_function)
 
template<class _ExceptionType >
void assertThrowAux (void const *_pointer, ::std::string const &_errorDescription, unsigned _line, char const *_file, char const *_function)
 
std::string toBase64 (bytesConstRef _in)
 
bytes fromBase64 (std::string const &_in)
 
int64_t utcTime ()
 Get the current time in seconds since the epoch in UTC. More...
 
string inUnits (bigint const &_b, strings const &_units)
 Converts given int to a string and appends one of a series of units according to its size. More...
 
void setDefaultOrCLocale ()
 
bool isTrue (std::string const &_m)
 
bool isFalse (std::string const &_m)
 
s256 u2s (u256 _u)
 Interprets _u as a two's complement signed number and returns the resulting s256. More...
 
u256 s2u (s256 _u)
 
unsigned int toLog2 (u256 _x)
 
template<size_t n>
u256 exp10 ()
 
template<>
u256 exp10< 0 > ()
 
template<class N >
diff (N const &_a, N const &_b)
 
template<class Iterator >
std::string toHex (Iterator _it, Iterator _end, std::string const &_prefix)
 
template<class T >
std::string toHex (T const &_data)
 
template<class T >
std::string toHexPrefixed (T const &_data)
 
bytes fromHex (std::string const &_s, WhenError _throw=WhenError::DontThrow)
 
bool isHex (std::string const &_s) noexcept
 
std::string asString (bytes const &_b)
 
std::string asString (bytesConstRef _b)
 
bytes asBytes (std::string const &_b)
 Converts a string to a byte array containing the string's (byte) data. More...
 
bytes asNibbles (bytesConstRef const &_s)
 
template<class T , class Out >
void toBigEndian (T _val, Out &o_out)
 
template<class T , class _In >
fromBigEndian (_In const &_bytes)
 
std::string toBigEndianString (u256 _val)
 Convenience functions for toBigEndian. More...
 
std::string toBigEndianString (u160 _val)
 
bytes toBigEndian (u256 _val)
 
bytes toBigEndian (u160 _val)
 
template<class T >
bytes toCompactBigEndian (T _val, unsigned _min=0)
 
bytes toCompactBigEndian (byte _val, unsigned _min=0)
 
template<class T >
std::string toCompactBigEndianString (T _val, unsigned _min=0)
 
std::string toCompactHex (u256 _val, unsigned _min=0)
 
std::string toCompactHexPrefixed (u256 _val, unsigned _min=0)
 
std::string escaped (std::string const &_s, bool _all=true)
 
template<class T , class _U >
unsigned commonPrefix (T const &_t, _U const &_u)
 
template<class T >
unsigned bytesRequired (T _i)
 Determine bytes required to encode the given integer value. More...
 
template<class T >
void trimFront (T &_t, unsigned _elements)
 
template<class T , class _U >
void pushFront (T &_t, _U _e)
 
template<class T , class U >
std::vector< T > & operator+= (std::vector< T > &_a, U const &_b)
 Concatenate the contents of a container onto a vector. More...
 
template<class T , class U >
std::set< T > & operator+= (std::set< T > &_a, U const &_b)
 Insert the contents of a container into a set. More...
 
template<class T , class U >
std::unordered_set< T > & operator+= (std::unordered_set< T > &_a, U const &_b)
 Insert the contents of a container into an unordered_set. More...
 
template<class T , class U >
std::set< T > operator+ (std::set< T > _a, U const &_b)
 Insert the contents of a container into a set. More...
 
template<class T , class U >
std::unordered_set< T > operator+ (std::unordered_set< T > _a, U const &_b)
 Insert the contents of a container into an unordered_set. More...
 
template<class T , class U >
std::vector< T > operator+ (std::vector< T > _a, U const &_b)
 Concatenate the contents of a container onto a vector. More...
 
template<class T , class U >
std::vector< T > keysOf (std::map< T, U > const &_m)
 
template<class T , class U >
std::vector< T > keysOf (std::unordered_map< T, U > const &_m)
 
template<class T , class U >
std::vector< U > valuesOf (std::map< T, U > const &_m)
 
template<class T , class U >
std::vector< U > valuesOf (std::unordered_map< T, U > const &_m)
 
template<class T , class V >
bool contains (T const &_t, V const &_v)
 
template<class V >
bool contains (std::unordered_set< V > const &_set, V const &_v)
 
template<class K , class V >
bool contains (std::unordered_map< K, V > const &_map, K const &_k)
 
template<class V >
bool contains (std::set< V > const &_set, V const &_v)
 
string memDump (bytes const &_bytes, unsigned _width, bool _html)
 
template<typename _T >
_T contentsGeneric (boost::filesystem::path const &_file)
 
bytes contents (boost::filesystem::path const &_file)
 
bytesSec contentsSec (boost::filesystem::path const &_file)
 Secure variation. More...
 
string contentsString (boost::filesystem::path const &_file)
 
void writeFile (boost::filesystem::path const &_file, bytesConstRef _data, bool _writeDeleteRename)
 
void copyDirectory (boost::filesystem::path const &_srcDir, boost::filesystem::path const &_dstDir)
 
std::string getPassword (std::string const &_prompt)
 Requests the user to enter a password on the console. More...
 
void writeFile (boost::filesystem::path const &_file, bytes const &_data, bool _writeDeleteRename=false)
 Write the given binary data into the given file, replacing the file if it pre-exists. More...
 
std::ostream & operator<< (std::ostream &_out, bytes const &_e)
 
template<class T >
std::ostream & operator<< (std::ostream &_out, std::vector< T > const &_e)
 
template<class T , std::size_t Z>
std::ostream & operator<< (std::ostream &_out, std::array< T, Z > const &_e)
 
template<class T , class U >
std::ostream & operator<< (std::ostream &_out, std::set< T, U > const &_e)
 
template<class T , class U >
std::ostream & operator<< (std::ostream &_out, std::unordered_set< T, U > const &_e)
 
template<class T >
std::string toString (std::chrono::time_point< T > const &_e, std::string const &_format="%F %T")
 
template<class T >
std::ostream & streamout (std::ostream &_out, std::vector< T > const &_e)
 
template<class T , std::size_t Z>
std::ostream & streamout (std::ostream &_out, std::array< T, Z > const &_e)
 
template<class T >
std::ostream & streamout (std::ostream &_out, std::set< T > const &_v)
 
template<class T >
std::ostream & operator<< (std::ostream &_out, std::set< T > const &_e)
 
template<class T >
std::ostream & streamout (std::ostream &_out, std::unordered_set< T > const &_v)
 
template<class T >
std::ostream & operator<< (std::ostream &_out, std::unordered_set< T > const &_e)
 
template<class _T >
std::string toString (_T const &_t)
 Converts arbitrary value to string representation using std::stringstream. More...
 
template<>
std::string toString< std::string > (std::string const &_s)
 
template<>
std::string toString< uint8_t > (uint8_t const &_u)
 
bytes jsToBytes (string const &_s, OnFailed _f)
 
bytes padded (bytes _b, unsigned _l)
 Add '0' on, or remove items from, the front of _b until it is of length _l. More...
 
bytes paddedRight (bytes _b, unsigned _l)
 Add '0' on, or remove items from, the back of _b until it is of length _l. More...
 
bytes unpadded (bytes _s)
 Removing all trailing '0'. Returns empty array if input contains only '0' char. More...
 
bytes unpadLeft (bytes _s)
 Remove all 0 byte on the head of _s. More...
 
string fromRaw (h256 _n)
 Convert h256 into user-readable string (by directly using std::string constructor). If it can't be interpreted as an ASCII string, empty string is returned. More...
 
std::string toJS (byte _b)
 
template<unsigned S>
std::string toJS (FixedHash< S > const &_h)
 
template<unsigned N>
std::string toJS (boost::multiprecision::number< boost::multiprecision::cpp_int_backend< N, N, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void >> const &_n)
 
std::string toJS (bytes const &_n, std::size_t _padding=0)
 
template<unsigned T>
std::string toJS (SecureFixedHash< T > const &_i)
 
template<typename T >
std::string toJS (T const &_i)
 
bytes jsToBytes (std::string const &_s, OnFailed _f=OnFailed::Empty)
 
template<unsigned N>
FixedHash< N > jsToFixed (std::string const &_s)
 
template<unsigned N>
boost::multiprecision::number< boost::multiprecision::cpp_int_backend< N *8, N *8, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void > > jsToInt (std::string const &_s)
 
u256 jsToU256 (std::string const &_s)
 
std::string jsToDecimal (std::string const &_s)
 
 DEV_SIMPLE_EXCEPTION_RLP (BadCast)
 
 DEV_SIMPLE_EXCEPTION_RLP (BadRLP)
 
 DEV_SIMPLE_EXCEPTION_RLP (OversizeRLP)
 
 DEV_SIMPLE_EXCEPTION_RLP (UndersizeRLP)
 
 DEV_SIMPLE_EXCEPTION (BadHexCharacter)
 
 DEV_SIMPLE_EXCEPTION (NoNetworking)
 
 DEV_SIMPLE_EXCEPTION (NoUPnPDevice)
 
 DEV_SIMPLE_EXCEPTION (RootNotFound)
 
 DEV_SIMPLE_EXCEPTION (BadRoot)
 
 DEV_SIMPLE_EXCEPTION (FileError)
 
 DEV_SIMPLE_EXCEPTION (Overflow)
 
 DEV_SIMPLE_EXCEPTION (FailedInvariant)
 
 DEV_SIMPLE_EXCEPTION (ValueTooLarge)
 
 DEV_SIMPLE_EXCEPTION (UnknownField)
 
 DEV_SIMPLE_EXCEPTION (MissingField)
 
 DEV_SIMPLE_EXCEPTION (SyntaxError)
 
 DEV_SIMPLE_EXCEPTION (WrongFieldType)
 
 DEV_SIMPLE_EXCEPTION (InterfaceNotSupported)
 
 DEV_SIMPLE_EXCEPTION (ExternalFunctionFailure)
 
 DEV_SIMPLE_EXCEPTION (WaitTimeout)
 
void setDataDir (boost::filesystem::path const &_dir)
 Sets the data dir for the default ("ethereum") prefix. More...
 
boost::filesystem::path getDataDir (std::string _prefix="ethereum")
 
boost::filesystem::path getDefaultDataDir (std::string _prefix="ethereum")
 
void setIpcPath (boost::filesystem::path const &_ipcPath)
 Sets the ipc socket dir. More...
 
boost::filesystem::path getIpcPath ()
 
boost::filesystem::path appendToFilename (boost::filesystem::path const &_orig, std::string const &_suffix)
 
h128 fromUUID (std::string const &_uuid)
 
std::string toUUID (h128 const &_uuid)
 
template<unsigned N>
std::ostream & operator<< (std::ostream &_out, FixedHash< N > const &_h)
 Stream I/O for the FixedHash class. More...
 
template<unsigned N>
std::istream & operator>> (std::istream &_in, FixedHash< N > &o_h)
 
template<unsigned N>
std::ostream & operator<< (std::ostream &_out, SecureFixedHash< N > const &_h)
 Stream I/O for the SecureFixedHash class. More...
 
h160 right160 (h256 const &_t)
 Convert the given value into h160 (160-bit unsigned integer) using the right 20 bytes. More...
 
std::string toString (h256s const &_bs)
 
void validateFieldNames (json_spirit::mObject const &_obj, std::set< std::string > const &_allowedFields)
 
std::string jsonTypeAsString (json_spirit::Value_type _type)
 
void requireJsonFields (json_spirit::mObject const &_o, std::string const &_configName, std::map< std::string, JsonFieldOptions > const &_validationMap)
 
std::string getThreadName ()
 Set the current thread's log name. More...
 
void setThreadName (std::string const &_n)
 
void setupLogging (LoggingOptions const &_options)
 
 BOOST_LOG_INLINE_GLOBAL_LOGGER_CTOR_ARGS (g_errorLogger, boost::log::sources::severity_channel_logger_mt<>,(boost::log::keywords::severity=VerbosityError)(boost::log::keywords::channel="error")) BOOST_LOG_INLINE_GLOBAL_LOGGER_CTOR_ARGS(g_warnLogger
 
Logger createLogger (int _severity, std::string const &_channel)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, bigint const &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, bigint &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, u256 const &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, u256 &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, u160 const &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, u160 &_value)
 
template<unsigned N>
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, FixedHash< N > const &_value)
 
template<unsigned N>
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, FixedHash< N > &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, h160 const &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, h160 &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, h256 const &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, h256 &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, h512 const &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, h512 &_value)
 
boost::log::formatting_ostream & operator<< (boost::log::formatting_ostream &_strm, bytesConstRef _value)
 
po::options_description createLoggingProgramOptions (unsigned _lineLength, LoggingOptions &_options)
 
std::ostream & operator<< (std::ostream &_out, RangeMask const &_r)
 
template<class _T >
void rlpListAux (RLPStream &_out, _T _t)
 
template<class _T , class ... _Ts>
void rlpListAux (RLPStream &_out, _T _t, _Ts ... _ts)
 
template<class _T >
bytes rlp (_T _t)
 Export a single item in RLP format, returning a byte array. More...
 
bytes rlpList ()
 Export a list of items in RLP format, returning a byte array. More...
 
template<class ... _Ts>
bytes rlpList (_Ts ... _ts)
 
std::ostream & operator<< (std::ostream &_out, dev::RLP const &_d)
 Human readable version of RLP. More...
 
bool sha3 (bytesConstRef _input, bytesRef o_output) noexcept
 
h256 sha3 (bytesConstRef _input) noexcept
 Calculate SHA3-256 hash of the given input, returning as a 256-bit hash. More...
 
SecureFixedHash< 32 > sha3Secure (bytesConstRef _input) noexcept
 
h256 sha3 (bytes const &_input) noexcept
 Calculate SHA3-256 hash of the given input, returning as a 256-bit hash. More...
 
SecureFixedHash< 32 > sha3Secure (bytes const &_input) noexcept
 
h256 sha3 (std::string const &_input) noexcept
 Calculate SHA3-256 hash of the given input (presented as a binary-filled string), returning as a 256-bit hash. More...
 
SecureFixedHash< 32 > sha3Secure (std::string const &_input) noexcept
 
h256 sha3 (h256 const &_input) noexcept
 Keccak hash variant optimized for hashing 256-bit hashes. More...
 
template<unsigned N>
h256 sha3 (FixedHash< N > const &_input) noexcept
 Calculate SHA3-256 hash of the given input (presented as a FixedHash), returns a 256-bit hash. More...
 
template<unsigned N>
SecureFixedHash< 32 > sha3Secure (FixedHash< N > const &_input) noexcept
 
SecureFixedHash< 32 > sha3 (bytesSec const &_input) noexcept
 Fully secure variants are equivalent for sha3 and sha3Secure. More...
 
SecureFixedHash< 32 > sha3Secure (bytesSec const &_input) noexcept
 
template<unsigned N>
SecureFixedHash< 32 > sha3 (SecureFixedHash< N > const &_input) noexcept
 
template<unsigned N>
SecureFixedHash< 32 > sha3Secure (SecureFixedHash< N > const &_input) noexcept
 
std::string sha3 (std::string const &_input, bool _isNibbles)
 Calculate SHA3-256 hash of the given input, possibly interpreting it as nibbles, and return the hash as a string filled with binary data. More...
 
void sha3mac (bytesConstRef _secret, bytesConstRef _plain, bytesRef _output)
 Calculate SHA3-256 MAC. More...
 
std::ostream & operator<< (std::ostream &_out, StateCacheDB const &_m)
 
std::string hexPrefixEncode (bytes const &_hexVector, bool _leaf, int _begin, int _end)
 
std::string hexPrefixEncode (bytesConstRef _data, bool _leaf, int _beginNibble, int _endNibble, unsigned _offset)
 
std::string hexPrefixEncode (bytesConstRef _d1, unsigned _o1, bytesConstRef _d2, unsigned _o2, bool _leaf)
 
byte uniqueInUse (RLP const &_orig, byte except)
 
byte nibble (bytesConstRef _data, unsigned _i)
 
unsigned sharedNibbles (bytesConstRef _first, unsigned _beginFirst, unsigned _endFirst, bytesConstRef _second, unsigned _beginSecond, unsigned _endSecond)
 
std::ostream & operator<< (std::ostream &_out, NibbleSlice const &_m)
 
bool isLeaf (RLP const &_twoItem)
 
NibbleSlice keyOf (bytesConstRef _hpe)
 
NibbleSlice keyOf (RLP const &_twoItem)
 
std::string hexPrefixEncode (NibbleSlice _s, bool _leaf, int _begin=0, int _end=-1)
 
std::string hexPrefixEncode (NibbleSlice _s1, NibbleSlice _s2, bool _leaf)
 
template<class DB >
std::ostream & operator<< (std::ostream &_out, GenericTrieDB< DB > const &_db)
 
template<class Generic , class KeyType >
std::ostream & operator<< (std::ostream &_out, SpecificTrieDB< Generic, KeyType > const &_db)
 
void hash256aux (HexMap const &_s, HexMap::const_iterator _begin, HexMap::const_iterator _end, unsigned _preLen, RLPStream &_rlp)
 
void hash256rlp (HexMap const &_s, HexMap::const_iterator _begin, HexMap::const_iterator _end, unsigned _preLen, RLPStream &_rlp)
 
bytes rlp256 (BytesMap const &_s)
 
h256 hash256 (BytesMap const &_s)
 
h256 orderedTrieRoot (std::vector< bytes > const &_data)
 
h256 orderedTrieRoot (std::vector< bytesConstRef > const &_data)
 
template<class T , class U >
h256 trieRootOver (unsigned _itemCount, T const &_getKey, U const &_getValue)
 
template<class _T >
vector_ref< _T const > ref (_T const &_t)
 
template<class _T >
vector_ref< _T > ref (_T &_t)
 
template<class _T >
vector_ref< _T const > ref (std::vector< _T > const &_t)
 
template<class _T >
vector_ref< _T > ref (std::vector< _T > &_t)
 
bytes aesDecrypt (bytesConstRef _cipher, std::string const &_password, unsigned _rounds=2000, bytesConstRef _salt=bytesConstRef())
 
Public toPublic (Secret const &_secret)
 Convert a secret key into the public key equivalent. More...
 
PublicCompressed toPublicCompressed (Secret const &_secret)
 Convert a secret key into the public key in compressed format. More...
 
Address toAddress (Public const &_public)
 Convert a public key to address. More...
 
Address toAddress (Secret const &_secret)
 
Address toAddress (Address const &_from, u256 const &_nonce)
 
void encrypt (Public const &_k, bytesConstRef _plain, bytes &o_cipher)
 Encrypts plain text using Public key. More...
 
bool decrypt (Secret const &_k, bytesConstRef _cipher, bytes &o_plaintext)
 Decrypts cipher using Secret key. More...
 
void encryptSym (Secret const &_k, bytesConstRef _plain, bytes &o_cipher)
 Symmetric encryption. More...
 
bool decryptSym (Secret const &_k, bytesConstRef _cipher, bytes &o_plaintext)
 Symmetric decryption. More...
 
void encryptECIES (Public const &_k, bytesConstRef _plain, bytes &o_cipher)
 Encrypt payload using ECIES standard with AES128-CTR. More...
 
void encryptECIES (Public const &_k, bytesConstRef _sharedMacData, bytesConstRef _plain, bytes &o_cipher)
 
bool decryptECIES (Secret const &_k, bytesConstRef _cipher, bytes &o_plaintext)
 Decrypt payload using ECIES standard with AES128-CTR. More...
 
bool decryptECIES (Secret const &_k, bytesConstRef _sharedMacData, bytesConstRef _cipher, bytes &o_plaintext)
 
std::pair< bytes, h128encryptSymNoAuth (SecureFixedHash< 16 > const &_k, bytesConstRef _plain)
 Encrypts payload with random IV/ctr using AES128-CTR. More...
 
bytes encryptAES128CTR (bytesConstRef _k, h128 const &_iv, bytesConstRef _plain)
 Encrypts payload with specified IV/ctr using AES128-CTR. More...
 
bytesSec decryptAES128CTR (bytesConstRef _k, h128 const &_iv, bytesConstRef _cipher)
 Decrypts payload with specified IV/ctr using AES128-CTR. More...
 
bytes encryptSymNoAuth (SecureFixedHash< 16 > const &_k, h128 const &_iv, bytesConstRef _plain)
 Encrypts payload with specified IV/ctr using AES128-CTR. More...
 
bytes encryptSymNoAuth (SecureFixedHash< 32 > const &_k, h128 const &_iv, bytesConstRef _plain)
 
bytesSec decryptSymNoAuth (SecureFixedHash< 16 > const &_k, h128 const &_iv, bytesConstRef _cipher)
 Decrypts payload with specified IV/ctr using AES128-CTR. More...
 
bytesSec decryptSymNoAuth (SecureFixedHash< 32 > const &_k, h128 const &_iv, bytesConstRef _cipher)
 
Public recover (Signature const &_sig, h256 const &_hash)
 Recovers Public key from signed message hash. More...
 
Signature sign (Secret const &_k, h256 const &_hash)
 Returns siganture of message hash. More...
 
bool verify (Public const &_k, Signature const &_s, h256 const &_hash)
 Verify signature. More...
 
bool verify (PublicCompressed const &_key, h512 const &_signature, h256 const &_hash)
 
bytesSec pbkdf2 (std::string const &_pass, bytes const &_salt, unsigned _iterations, unsigned _dkLen=32)
 Derive key via PBKDF2. More...
 
bytesSec scrypt (std::string const &_pass, bytes const &_salt, uint64_t _n, uint32_t _r, uint32_t _p, unsigned _dkLen)
 Derive key via Scrypt. More...
 
h256 sha256 (bytesConstRef _input) noexcept
 
h160 ripemd160 (bytesConstRef _input)
 
std::string prettyU256 (u256 _n, bool _abridged=true)
 Convert u256 into user-readable string. Returns int/hex value of 64 bits int, hex of 160 bits FixedHash. As a fallback try to handle input as h256. More...
 
Public jsToPublic (std::string const &_s)
 Leniently convert string to Public (h512). Accepts integers, "0x" prefixing, non-exact length. More...
 
Secret jsToSecret (std::string const &_s)
 Leniently convert string to Secret (h256). Accepts integers, "0x" prefixing, non-exact length. More...
 
Address jsToAddress (std::string const &_s)
 Leniently convert string to Address (h160). Accepts integers, "0x" prefixing, non-exact length. More...
 

Variables

Address const ZeroAddress
 The zero address. More...
 
Address const MaxAddress {"0xffffffffffffffffffffffffffffffffffffffff"}
 The last address. More...
 
Address const SystemAddress {"0xfffffffffffffffffffffffffffffffffffffffe"}
 The SYSTEM address. More...
 
char const * Version = aleth_get_buildinfo()->project_version
 
bytes const NullBytes
 
std::string const EmptyString
 
constexpr u256 Invalid256
 
std::random_device s_fixedHashEngine
 
bytes RLPNull = rlp("")
 The empty string in RLP format. More...
 
bytes RLPEmptyList = rlpList()
 The empty list in RLP format. More...
 
h256 const EmptySHA3 = sha3(bytesConstRef())
 
h256 const EmptyListSHA3 = sha3(rlpList())
 
h256 const EmptyTrie = sha3(rlp(""))
 

Detailed Description

Adapted from code found on http://stackoverflow.com/questions/180947/base64-decode-snippet-in-c Originally by René Nyffenegger. DEVified by Gav Wood.

Typedef Documentation

◆ Address

using dev::Address = typedef h160

An Ethereum address: 20 bytes. @NOTE This is not endian-specific; it's just a bunch of bytes.

Definition at line 30 of file Address.h.

◆ Addresses

using dev::Addresses = typedef h160s

A vector of Ethereum addresses.

Definition at line 33 of file Address.h.

◆ AddressHash

using dev::AddressHash = typedef std::unordered_set<h160>

A hash set of Ethereum addresses.

Definition at line 36 of file Address.h.

◆ bigint

using dev::bigint = typedef boost::multiprecision::number<boost::multiprecision::cpp_int_backend<> >

Definition at line 118 of file Common.h.

◆ bytes

using dev::bytes = typedef std::vector<byte>

Definition at line 72 of file Common.h.

◆ bytesConstRef

using dev::bytesConstRef = typedef vector_ref<byte const>

Definition at line 74 of file Common.h.

◆ BytesMap

using dev::BytesMap = typedef std::map<bytes, bytes>

Definition at line 134 of file Common.h.

◆ bytesRef

using dev::bytesRef = typedef vector_ref<byte>

Definition at line 73 of file Common.h.

◆ bytesSec

using dev::bytesSec = typedef secure_vector<byte>

Definition at line 115 of file Common.h.

◆ errinfo_comment

typedef boost::error_info< struct tag_comment, std::string > dev::errinfo_comment

Definition at line 69 of file Assertions.h.

◆ errinfo_externalFunction

using dev::errinfo_externalFunction = typedef boost::errinfo_api_function

Definition at line 94 of file Exceptions.h.

◆ errinfo_extraData

using dev::errinfo_extraData = typedef boost::error_info<struct tag_extraData, bytes>

Definition at line 93 of file Exceptions.h.

◆ errinfo_got

using dev::errinfo_got = typedef boost::error_info<struct tag_got, bigint>

Definition at line 84 of file Exceptions.h.

◆ errinfo_got_h256

using dev::errinfo_got_h256 = typedef boost::error_info<struct tag_get_h256, h256>

Definition at line 91 of file Exceptions.h.

◆ errinfo_hash256

using dev::errinfo_hash256 = typedef boost::error_info<struct tag_hash, h256>

Definition at line 89 of file Exceptions.h.

◆ errinfo_interface

using dev::errinfo_interface = typedef boost::error_info<struct tag_interface, std::string>

Definition at line 95 of file Exceptions.h.

◆ errinfo_invalidSymbol

using dev::errinfo_invalidSymbol = typedef boost::error_info<struct tag_invalidSymbol, char>

Definition at line 80 of file Exceptions.h.

◆ errinfo_max

using dev::errinfo_max = typedef boost::error_info<struct tag_max, bigint>

Definition at line 86 of file Exceptions.h.

◆ errinfo_min

using dev::errinfo_min = typedef boost::error_info<struct tag_min, bigint>

Definition at line 85 of file Exceptions.h.

◆ errinfo_nodeID

using dev::errinfo_nodeID = typedef boost::error_info<struct tag_nodeID, h512>

Definition at line 97 of file Exceptions.h.

◆ errinfo_path

using dev::errinfo_path = typedef boost::error_info<struct tag_path, std::string>

Definition at line 96 of file Exceptions.h.

◆ errinfo_required

using dev::errinfo_required = typedef boost::error_info<struct tag_required, bigint>

Definition at line 83 of file Exceptions.h.

◆ errinfo_required_h256

using dev::errinfo_required_h256 = typedef boost::error_info<struct tag_required_h256, h256>

Definition at line 90 of file Exceptions.h.

◆ errinfo_wrongAddress

using dev::errinfo_wrongAddress = typedef boost::error_info<struct tag_address, std::string>

Definition at line 81 of file Exceptions.h.

◆ Guard

using dev::Guard = typedef std::lock_guard<std::mutex>

Definition at line 41 of file Guards.h.

◆ h1024

using dev::h1024 = typedef FixedHash<128>

Definition at line 353 of file FixedHash.h.

◆ h128

using dev::h128 = typedef FixedHash<16>

Definition at line 358 of file FixedHash.h.

◆ h160

using dev::h160 = typedef FixedHash<20>

Definition at line 357 of file FixedHash.h.

◆ h160Hash

using dev::h160Hash = typedef std::unordered_set<h160>

Definition at line 366 of file FixedHash.h.

◆ h160s

using dev::h160s = typedef std::vector<h160>

Definition at line 362 of file FixedHash.h.

◆ h160Set

using dev::h160Set = typedef std::set<h160>

Definition at line 364 of file FixedHash.h.

◆ h2048

using dev::h2048 = typedef FixedHash<256>

Definition at line 352 of file FixedHash.h.

◆ h256

using dev::h256 = typedef FixedHash<32>

Definition at line 356 of file FixedHash.h.

◆ h256Hash

using dev::h256Hash = typedef std::unordered_set<h256>

Definition at line 365 of file FixedHash.h.

◆ h256s

using dev::h256s = typedef std::vector<h256>

Definition at line 361 of file FixedHash.h.

◆ h256Set

using dev::h256Set = typedef std::set<h256>

Definition at line 363 of file FixedHash.h.

◆ h512

using dev::h512 = typedef FixedHash<64>

Definition at line 355 of file FixedHash.h.

◆ h512s

using dev::h512s = typedef std::vector<h512>

Definition at line 360 of file FixedHash.h.

◆ h520

using dev::h520 = typedef FixedHash<65>

Definition at line 354 of file FixedHash.h.

◆ h64

using dev::h64 = typedef FixedHash<8>

Definition at line 359 of file FixedHash.h.

◆ Hash256RequirementError

Definition at line 92 of file Exceptions.h.

◆ HexMap

using dev::HexMap = typedef std::map<bytes, bytes>

Definition at line 136 of file Common.h.

◆ JsonFieldOptions

Definition at line 39 of file JsonUtils.h.

◆ JsonTypeSet

using dev::JsonTypeSet = typedef std::set<json_spirit::Value_type>

Definition at line 38 of file JsonUtils.h.

◆ Logger

using dev::Logger = typedef boost::log::sources::severity_channel_logger<>

Definition at line 124 of file Log.h.

◆ Mutex

using dev::Mutex = typedef std::mutex

Definition at line 37 of file Guards.h.

◆ Public

using dev::Public = typedef h512

A public key: 64 bytes. @NOTE This is not endian-specific; it's just a bunch of bytes.

Definition at line 40 of file Common.h.

◆ PublicCompressed

using dev::PublicCompressed = typedef FixedHash<33>

A public key in compressed format: 33 bytes. @NOTE This is not endian-specific; it's just a bunch of bytes.

Definition at line 44 of file Common.h.

◆ ReadGuard

using dev::ReadGuard = typedef boost::shared_lock<boost::shared_mutex>

Definition at line 44 of file Guards.h.

◆ RecursiveGuard

using dev::RecursiveGuard = typedef std::lock_guard<std::recursive_mutex>

Definition at line 43 of file Guards.h.

◆ RecursiveMutex

using dev::RecursiveMutex = typedef std::recursive_mutex

Definition at line 38 of file Guards.h.

◆ RequirementError

using dev::RequirementError = typedef boost::tuple<errinfo_required, errinfo_got>

Definition at line 87 of file Exceptions.h.

◆ RequirementErrorComment

Definition at line 88 of file Exceptions.h.

◆ s160

using dev::s160 = typedef boost::multiprecision::number<boost::multiprecision::cpp_int_backend<160, 160, boost::multiprecision::signed_magnitude, boost::multiprecision::unchecked, void> >

Definition at line 124 of file Common.h.

◆ s256

using dev::s256 = typedef boost::multiprecision::number<boost::multiprecision::cpp_int_backend<256, 256, boost::multiprecision::signed_magnitude, boost::multiprecision::unchecked, void> >

Definition at line 122 of file Common.h.

◆ s512

using dev::s512 = typedef boost::multiprecision::number<boost::multiprecision::cpp_int_backend<512, 512, boost::multiprecision::signed_magnitude, boost::multiprecision::unchecked, void> >

Definition at line 126 of file Common.h.

◆ Secret

using dev::Secret = typedef SecureFixedHash<32>

Definition at line 36 of file Common.h.

◆ Secrets

using dev::Secrets = typedef std::vector<Secret>

A vector of secrets.

Definition at line 66 of file Common.h.

◆ SharedMutex

using dev::SharedMutex = typedef boost::shared_mutex

Definition at line 39 of file Guards.h.

◆ Signature

using dev::Signature = typedef h520

A signature: 65 bytes: r: [0, 32), s: [32, 64), v: 64. @NOTE This is not endian-specific; it's just a bunch of bytes.

Definition at line 48 of file Common.h.

◆ StringHashMap

using dev::StringHashMap = typedef std::unordered_map<std::string, std::string>

Definition at line 139 of file Common.h.

◆ StringMap

using dev::StringMap = typedef std::map<std::string, std::string>

Definition at line 133 of file Common.h.

◆ strings

using dev::strings = typedef std::vector<std::string>

Definition at line 143 of file Common.h.

◆ TrieDB

template<class KeyType , class DB >
using dev::TrieDB = typedef SpecificTrieDB<GenericTrieDB<DB>, KeyType>

Definition at line 497 of file TrieDB.h.

◆ u128

using dev::u128 = typedef boost::multiprecision::number<boost::multiprecision::cpp_int_backend<128, 128, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void> >

Definition at line 120 of file Common.h.

◆ u160

using dev::u160 = typedef boost::multiprecision::number<boost::multiprecision::cpp_int_backend<160, 160, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void> >

Definition at line 123 of file Common.h.

◆ u160s

using dev::u160s = typedef std::vector<u160>

Definition at line 128 of file Common.h.

◆ u160Set

using dev::u160Set = typedef std::set<u160>

Definition at line 130 of file Common.h.

◆ u256

using dev::u256 = typedef boost::multiprecision::number<boost::multiprecision::cpp_int_backend<256, 256, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void> >

Definition at line 121 of file Common.h.

◆ u256HashMap

using dev::u256HashMap = typedef std::unordered_map<u256, u256>

Definition at line 140 of file Common.h.

◆ u256Map

using dev::u256Map = typedef std::map<u256, u256>

Definition at line 135 of file Common.h.

◆ u256s

using dev::u256s = typedef std::vector<u256>

Definition at line 127 of file Common.h.

◆ u256Set

using dev::u256Set = typedef std::set<u256>

Definition at line 129 of file Common.h.

◆ u512

using dev::u512 = typedef boost::multiprecision::number<boost::multiprecision::cpp_int_backend<512, 512, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void> >

Definition at line 125 of file Common.h.

◆ u64

using dev::u64 = typedef boost::multiprecision::number<boost::multiprecision::cpp_int_backend<64, 64, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void> >

Definition at line 119 of file Common.h.

◆ UniqueGuard

using dev::UniqueGuard = typedef std::unique_lock<std::mutex>

Definition at line 42 of file Guards.h.

◆ UnsignedRange

using dev::UnsignedRange = typedef std::pair<unsigned, unsigned>

Definition at line 37 of file RangeMask.h.

◆ UnsignedRanges

using dev::UnsignedRanges = typedef std::vector<UnsignedRange>

Definition at line 38 of file RangeMask.h.

◆ UpgradableGuard

using dev::UpgradableGuard = typedef boost::upgrade_lock<boost::shared_mutex>

Definition at line 45 of file Guards.h.

◆ UpgradeGuard

using dev::UpgradeGuard = typedef boost::upgrade_to_unique_lock<boost::shared_mutex>

Definition at line 46 of file Guards.h.

◆ WriteGuard

using dev::WriteGuard = typedef boost::unique_lock<boost::shared_mutex>

Definition at line 47 of file Guards.h.

Enumeration Type Documentation

◆ IfRunning

enum dev::IfRunning
strong
Enumerator
Fail 
Join 
Detach 

Definition at line 32 of file Worker.h.

◆ JsonFieldPresence

Enumerator
Required 
Optional 

Definition at line 33 of file JsonUtils.h.

◆ KDF

enum dev::KDF
strong
Enumerator
PBKDF2_SHA256 
Scrypt 

Definition at line 35 of file SecretStore.h.

◆ OnFailed

enum dev::OnFailed
strong
Enumerator
InterpretRaw 
Empty 
Throw 

Definition at line 70 of file CommonJS.h.

◆ Verbosity

Enumerator
VerbositySilent 
VerbosityError 
VerbosityWarning 
VerbosityInfo 
VerbosityDebug 
VerbosityTrace 

Definition at line 65 of file Log.h.

◆ Verification

enum dev::Verification
strong
Enumerator
Skip 
Normal 

Definition at line 35 of file TrieDB.h.

◆ WhenError

enum dev::WhenError
strong
Enumerator
DontThrow 
Throw 

Definition at line 39 of file CommonData.h.

◆ WithExisting

enum dev::WithExisting : int
strong
Enumerator
Trust 
Verify 
Rescue 
Kill 

Definition at line 291 of file Common.h.

◆ WorkerState

enum dev::WorkerState
strong
Enumerator
Starting 
Started 
Stopping 
Stopped 
Killing 

Definition at line 39 of file Worker.h.

◆ WorkState

Enumerator
Active 
Deleting 
Deleted 

Definition at line 41 of file WebThree.h.

Function Documentation

◆ aesDecrypt()

bytes dev::aesDecrypt ( bytesConstRef  _cipher,
std::string const &  _password,
unsigned  _rounds = 2000,
bytesConstRef  _salt = bytesConstRef() 
)

Definition at line 32 of file AES.cpp.

◆ appendToFilename()

boost::filesystem::path dev::appendToFilename ( boost::filesystem::path const &  _orig,
std::string const &  _suffix 
)
Returns
a new path whose file name is suffixed with the given suffix.

◆ asBytes()

bytes dev::asBytes ( std::string const &  _b)
inline

Converts a string to a byte array containing the string's (byte) data.

Definition at line 106 of file CommonData.h.

◆ asNibbles()

bytes dev::asNibbles ( bytesConstRef const &  _s)

Definition at line 111 of file CommonData.cpp.

◆ assertAux()

bool dev::assertAux ( bool  _a,
char const *  _aStr,
unsigned  _line,
char const *  _file,
char const *  _func 
)
inline

Definition at line 44 of file Assertions.h.

◆ assertEqualAux()

template<class A , class B >
bool dev::assertEqualAux ( A const &  _a,
B const &  _b,
char const *  _aStr,
char const *  _bStr,
unsigned  _line,
char const *  _file,
char const *  _func 
)
inline

Definition at line 52 of file Assertions.h.

◆ assertThrowAux() [1/2]

template<class _ExceptionType >
void dev::assertThrowAux ( bool  _condition,
::std::string const &  _errorDescription,
unsigned  _line,
char const *  _file,
char const *  _function 
)
inline

Definition at line 72 of file Assertions.h.

◆ assertThrowAux() [2/2]

template<class _ExceptionType >
void dev::assertThrowAux ( void const *  _pointer,
::std::string const &  _errorDescription,
unsigned  _line,
char const *  _file,
char const *  _function 
)
inline

Definition at line 91 of file Assertions.h.

◆ asString() [1/2]

std::string dev::asString ( bytes const &  _b)
inline

Converts byte array to a string containing the same (binary) data. Unless the byte array happens to contain ASCII data, this won't be printable.

Definition at line 93 of file CommonData.h.

◆ asString() [2/2]

std::string dev::asString ( bytesConstRef  _b)
inline

Converts byte array ref to a string containing the same (binary) data. Unless the byte array happens to contain ASCII data, this won't be printable.

Definition at line 100 of file CommonData.h.

◆ BOOST_LOG_INLINE_GLOBAL_LOGGER_CTOR_ARGS()

dev::BOOST_LOG_INLINE_GLOBAL_LOGGER_CTOR_ARGS ( g_errorLogger  ,
boost::log::sources::severity_channel_logger_mt<>  ,
(boost::log::keywords::severity=VerbosityError)(boost::log::keywords::channel="error")   
)

◆ bytesRequired()

template<class T >
unsigned dev::bytesRequired ( _i)
inline

Determine bytes required to encode the given integer value.

Returns
0 if _i is zero.

Definition at line 213 of file CommonData.h.

◆ commonPrefix()

template<class T , class _U >
unsigned dev::commonPrefix ( T const &  _t,
_U const &  _u 
)

Definition at line 202 of file CommonData.h.

◆ contains() [1/4]

template<class V >
bool dev::contains ( std::set< V > const &  _set,
V const &  _v 
)

Definition at line 342 of file CommonData.h.

◆ contains() [2/4]

template<class K , class V >
bool dev::contains ( std::unordered_map< K, V > const &  _map,
K const &  _k 
)

Definition at line 336 of file CommonData.h.

◆ contains() [3/4]

template<class V >
bool dev::contains ( std::unordered_set< V > const &  _set,
V const &  _v 
)

Definition at line 330 of file CommonData.h.

◆ contains() [4/4]

template<class T , class V >
bool dev::contains ( T const &  _t,
V const &  _v 
)

Definition at line 324 of file CommonData.h.

◆ contents()

bytes dev::contents ( boost::filesystem::path const &  _file)

Retrieve and returns the contents of the given file. If the file doesn't exist or isn't readable, returns an empty container / bytes.

Definition at line 107 of file CommonIO.cpp.

◆ contentsGeneric()

template<typename _T >
_T dev::contentsGeneric ( boost::filesystem::path const &  _file)
inline

Definition at line 87 of file CommonIO.cpp.

◆ contentsSec()

bytesSec dev::contentsSec ( boost::filesystem::path const &  _file)

Secure variation.

Definition at line 112 of file CommonIO.cpp.

◆ contentsString()

std::string dev::contentsString ( boost::filesystem::path const &  _file)

Retrieve and returns the contents of the given file as a std::string. If the file doesn't exist or isn't readable, returns an empty container / bytes.

Definition at line 120 of file CommonIO.cpp.

◆ copyDirectory()

void dev::copyDirectory ( boost::filesystem::path const &  _srcDir,
boost::filesystem::path const &  _dstDir 
)

Non-recursively copies directory contents. Throws boost::filesystem_error on error.

Definition at line 146 of file CommonIO.cpp.

◆ createLogger()

Logger dev::createLogger ( int  _severity,
std::string const &  _channel 
)
inline

Definition at line 125 of file Log.h.

◆ createLoggingProgramOptions()

boost::program_options::options_description dev::createLoggingProgramOptions ( unsigned  _lineLength,
LoggingOptions &  _options 
)

Definition at line 24 of file LoggingProgramOptions.cpp.

◆ decrypt()

bool dev::decrypt ( Secret const &  _k,
bytesConstRef  _cipher,
bytes o_plaintext 
)

Decrypts cipher using Secret key.

Definition at line 127 of file Common.cpp.

◆ decryptAES128CTR()

bytesSec dev::decryptAES128CTR ( bytesConstRef  _k,
h128 const &  _iv,
bytesConstRef  _cipher 
)

Decrypts payload with specified IV/ctr using AES128-CTR.

Definition at line 201 of file Common.cpp.

◆ decryptECIES() [1/2]

bool dev::decryptECIES ( Secret const &  _k,
bytesConstRef  _cipher,
bytes o_plaintext 
)

Decrypt payload using ECIES standard with AES128-CTR.

Definition at line 149 of file Common.cpp.

◆ decryptECIES() [2/2]

bool dev::decryptECIES ( Secret const &  _k,
bytesConstRef  _sharedMacData,
bytesConstRef  _cipher,
bytes o_plaintext 
)

Decrypt payload using ECIES standard with AES128-CTR. _sharedMacData is shared authenticated data.

Definition at line 154 of file Common.cpp.

◆ decryptSym()

bool dev::decryptSym ( Secret const &  _k,
bytesConstRef  _cipher,
bytes o_plaintext 
)

Symmetric decryption.

Definition at line 169 of file Common.cpp.

◆ decryptSymNoAuth() [1/2]

bytesSec dev::decryptSymNoAuth ( SecureFixedHash< 16 > const &  _k,
h128 const &  _iv,
bytesConstRef  _cipher 
)
inline

Decrypts payload with specified IV/ctr using AES128-CTR.

Definition at line 124 of file Common.h.

◆ decryptSymNoAuth() [2/2]

bytesSec dev::decryptSymNoAuth ( SecureFixedHash< 32 > const &  _k,
h128 const &  _iv,
bytesConstRef  _cipher 
)
inline

Definition at line 125 of file Common.h.

◆ DEV_SIMPLE_EXCEPTION() [1/16]

dev::DEV_SIMPLE_EXCEPTION ( BadHexCharacter  )

◆ DEV_SIMPLE_EXCEPTION() [2/16]

dev::DEV_SIMPLE_EXCEPTION ( BadRoot  )

◆ DEV_SIMPLE_EXCEPTION() [3/16]

dev::DEV_SIMPLE_EXCEPTION ( ExternalFunctionFailure  )

◆ DEV_SIMPLE_EXCEPTION() [4/16]

dev::DEV_SIMPLE_EXCEPTION ( FailedInvariant  )

◆ DEV_SIMPLE_EXCEPTION() [5/16]

dev::DEV_SIMPLE_EXCEPTION ( FileError  )

◆ DEV_SIMPLE_EXCEPTION() [6/16]

dev::DEV_SIMPLE_EXCEPTION ( InterfaceNotSupported  )

◆ DEV_SIMPLE_EXCEPTION() [7/16]

dev::DEV_SIMPLE_EXCEPTION ( MissingField  )

◆ DEV_SIMPLE_EXCEPTION() [8/16]

dev::DEV_SIMPLE_EXCEPTION ( NoNetworking  )

◆ DEV_SIMPLE_EXCEPTION() [9/16]

dev::DEV_SIMPLE_EXCEPTION ( NoUPnPDevice  )

◆ DEV_SIMPLE_EXCEPTION() [10/16]

dev::DEV_SIMPLE_EXCEPTION ( Overflow  )

◆ DEV_SIMPLE_EXCEPTION() [11/16]

dev::DEV_SIMPLE_EXCEPTION ( RootNotFound  )

◆ DEV_SIMPLE_EXCEPTION() [12/16]

dev::DEV_SIMPLE_EXCEPTION ( SyntaxError  )

◆ DEV_SIMPLE_EXCEPTION() [13/16]

dev::DEV_SIMPLE_EXCEPTION ( UnknownField  )

◆ DEV_SIMPLE_EXCEPTION() [14/16]

dev::DEV_SIMPLE_EXCEPTION ( ValueTooLarge  )

◆ DEV_SIMPLE_EXCEPTION() [15/16]

dev::DEV_SIMPLE_EXCEPTION ( WaitTimeout  )

◆ DEV_SIMPLE_EXCEPTION() [16/16]

dev::DEV_SIMPLE_EXCEPTION ( WrongFieldType  )

◆ DEV_SIMPLE_EXCEPTION_RLP() [1/4]

dev::DEV_SIMPLE_EXCEPTION_RLP ( BadCast  )

◆ DEV_SIMPLE_EXCEPTION_RLP() [2/4]

dev::DEV_SIMPLE_EXCEPTION_RLP ( BadRLP  )

◆ DEV_SIMPLE_EXCEPTION_RLP() [3/4]

dev::DEV_SIMPLE_EXCEPTION_RLP ( OversizeRLP  )

◆ DEV_SIMPLE_EXCEPTION_RLP() [4/4]

dev::DEV_SIMPLE_EXCEPTION_RLP ( UndersizeRLP  )

◆ diff()

template<class N >
N dev::diff ( N const &  _a,
N const &  _b 
)
inline
Returns
the absolute distance between _a and _b.

Definition at line 193 of file Common.h.

◆ encrypt()

void dev::encrypt ( Public const &  _k,
bytesConstRef  _plain,
bytes o_cipher 
)

Encrypts plain text using Public key.

Definition at line 120 of file Common.cpp.

◆ encryptAES128CTR()

bytes dev::encryptAES128CTR ( bytesConstRef  _k,
h128 const &  _iv,
bytesConstRef  _plain 
)

Encrypts payload with specified IV/ctr using AES128-CTR.

Definition at line 181 of file Common.cpp.

◆ encryptECIES() [1/2]

void dev::encryptECIES ( Public const &  _k,
bytesConstRef  _plain,
bytes o_cipher 
)

Encrypt payload using ECIES standard with AES128-CTR.

Definition at line 137 of file Common.cpp.

◆ encryptECIES() [2/2]

void dev::encryptECIES ( Public const &  _k,
bytesConstRef  _sharedMacData,
bytesConstRef  _plain,
bytes o_cipher 
)

Encrypt payload using ECIES standard with AES128-CTR. _sharedMacData is shared authenticated data.

Definition at line 142 of file Common.cpp.

◆ encryptSym()

void dev::encryptSym ( Secret const &  _k,
bytesConstRef  _plain,
bytes o_cipher 
)

Symmetric encryption.

Definition at line 163 of file Common.cpp.

◆ encryptSymNoAuth() [1/3]

std::pair< bytes, h128 > dev::encryptSymNoAuth ( SecureFixedHash< 16 > const &  _k,
bytesConstRef  _plain 
)

Encrypts payload with random IV/ctr using AES128-CTR.

Definition at line 175 of file Common.cpp.

◆ encryptSymNoAuth() [2/3]

bytes dev::encryptSymNoAuth ( SecureFixedHash< 16 > const &  _k,
h128 const &  _iv,
bytesConstRef  _plain 
)
inline

Encrypts payload with specified IV/ctr using AES128-CTR.

Definition at line 120 of file Common.h.

◆ encryptSymNoAuth() [3/3]

bytes dev::encryptSymNoAuth ( SecureFixedHash< 32 > const &  _k,
h128 const &  _iv,
bytesConstRef  _plain 
)
inline

Definition at line 121 of file Common.h.

◆ escaped()

std::string dev::escaped ( std::string const &  _s,
bool  _all = true 
)

Escapes a string into the C-string representation. _all if true will escape all characters, not just the unprintable ones.

Definition at line 52 of file CommonData.cpp.

◆ exp10()

template<size_t n>
u256 dev::exp10 ( )
inline

Definition at line 181 of file Common.h.

◆ exp10< 0 >()

template<>
u256 dev::exp10< 0 > ( )
inline

Definition at line 186 of file Common.h.

◆ fromBase64()

bytes dev::fromBase64 ( std::string const &  _in)

◆ fromBigEndian()

template<class T , class _In >
T dev::fromBigEndian ( _In const &  _bytes)
inline

Converts a big-endian byte-stream represented on a templated collection to a templated integer value. _In will typically be either std::string or bytes. T will typically by unsigned, u160, u256 or bigint.

Definition at line 138 of file CommonData.h.

◆ fromHex()

bytes dev::fromHex ( std::string const &  _s,
WhenError  _throw = WhenError::DontThrow 
)

Definition at line 81 of file CommonData.cpp.

◆ fromRaw()

string dev::fromRaw ( h256  _n)

Convert h256 into user-readable string (by directly using std::string constructor). If it can't be interpreted as an ASCII string, empty string is returned.

Definition at line 81 of file CommonJS.cpp.

◆ fromUUID()

h128 dev::fromUUID ( std::string const &  _uuid)

Definition at line 26 of file FixedHash.cpp.

◆ getDataDir()

boost::filesystem::path dev::getDataDir ( std::string  _prefix = "ethereum")
Returns
the path for user data.

◆ getDefaultDataDir()

boost::filesystem::path dev::getDefaultDataDir ( std::string  _prefix = "ethereum")
Returns
the default path for user data, ignoring the one set by setDataDir.

◆ getIpcPath()

fs::path dev::getIpcPath ( )
Returns
the ipc path (default is DataDir)

Definition at line 58 of file FileSystem.cpp.

◆ getPassword()

std::string dev::getPassword ( std::string const &  _prompt)

Requests the user to enter a password on the console.

Definition at line 154 of file CommonIO.cpp.

◆ getThreadName()

std::string dev::getThreadName ( )

Set the current thread's log name.

Definition at line 107 of file Log.cpp.

◆ hash256()

h256 dev::hash256 ( BytesMap const &  _s)

Definition at line 107 of file TrieHash.cpp.

◆ hash256aux()

void dev::hash256aux ( HexMap const &  _s,
HexMap::const_iterator  _begin,
HexMap::const_iterator  _end,
unsigned  _preLen,
RLPStream _rlp 
)

Definition at line 81 of file TrieHash.cpp.

◆ hash256rlp()

void dev::hash256rlp ( HexMap const &  _s,
HexMap::const_iterator  _begin,
HexMap::const_iterator  _end,
unsigned  _preLen,
RLPStream _rlp 
)

Definition at line 27 of file TrieHash.cpp.

◆ hexPrefixEncode() [1/5]

std::string dev::hexPrefixEncode ( bytes const &  _hexVector,
bool  _leaf,
int  _begin,
int  _end 
)

Definition at line 46 of file TrieCommon.cpp.

◆ hexPrefixEncode() [2/5]

std::string dev::hexPrefixEncode ( bytesConstRef  _d1,
unsigned  _o1,
bytesConstRef  _d2,
unsigned  _o2,
bool  _leaf 
)

Definition at line 84 of file TrieCommon.cpp.

◆ hexPrefixEncode() [3/5]

std::string dev::hexPrefixEncode ( bytesConstRef  _data,
bool  _leaf,
int  _beginNibble,
int  _endNibble,
unsigned  _offset 
)

Definition at line 63 of file TrieCommon.cpp.

◆ hexPrefixEncode() [4/5]

std::string dev::hexPrefixEncode ( NibbleSlice  _s,
bool  _leaf,
int  _begin = 0,
int  _end = -1 
)
inline

Definition at line 124 of file TrieCommon.h.

◆ hexPrefixEncode() [5/5]

std::string dev::hexPrefixEncode ( NibbleSlice  _s1,
NibbleSlice  _s2,
bool  _leaf 
)
inline

Definition at line 129 of file TrieCommon.h.

◆ inUnits()

std::string dev::inUnits ( bigint const &  _b,
strings const &  _units 
)

Converts given int to a string and appends one of a series of units according to its size.

Definition at line 61 of file Common.cpp.

◆ isFalse()

bool dev::isFalse ( std::string const &  _m)

Definition at line 134 of file Common.cpp.

◆ isHex()

bool dev::isHex ( std::string const &  _s)
noexcept
Returns
true if _s is a hex string.

◆ isLeaf()

bool dev::isLeaf ( RLP const &  _twoItem)
inline

Definition at line 97 of file TrieCommon.h.

◆ isTrue()

bool dev::isTrue ( std::string const &  _m)

Definition at line 129 of file Common.cpp.

◆ jsonTypeAsString()

std::string dev::jsonTypeAsString ( json_spirit::Value_type  _type)

Definition at line 36 of file JsonUtils.cpp.

◆ jsToAddress()

Address dev::jsToAddress ( std::string const &  _s)
inline

Leniently convert string to Address (h160). Accepts integers, "0x" prefixing, non-exact length.

Definition at line 43 of file CommonJS.h.

◆ jsToBytes() [1/2]

bytes dev::jsToBytes ( std::string const &  _s,
OnFailed  _f = OnFailed::Empty 
)

Convert string to byte array. Input parameter is hex, optionally prefixed by "0x". Returns empty array if invalid input.

◆ jsToBytes() [2/2]

bytes dev::jsToBytes ( string const &  _s,
OnFailed  _f 
)

Definition at line 31 of file CommonJS.cpp.

◆ jsToDecimal()

std::string dev::jsToDecimal ( std::string const &  _s)
inline

Definition at line 124 of file CommonJS.h.

◆ jsToFixed()

template<unsigned N>
FixedHash<N> dev::jsToFixed ( std::string const &  _s)

Definition at line 86 of file CommonJS.h.

◆ jsToInt()

template<unsigned N>
int dev::jsToInt ( std::string const &  _s)
inline

Convert a string representation of a number to an int String can be a normal decimal number, or a hex prefixed by 0x or 0X, or an octal if prefixed by 0 Returns 0 in case of failure

Definition at line 99 of file CommonJS.h.

◆ jsToPublic()

Public dev::jsToPublic ( std::string const &  _s)
inline

Leniently convert string to Public (h512). Accepts integers, "0x" prefixing, non-exact length.

Definition at line 37 of file CommonJS.h.

◆ jsToSecret()

Secret dev::jsToSecret ( std::string const &  _s)
inline

Leniently convert string to Secret (h256). Accepts integers, "0x" prefixing, non-exact length.

Definition at line 40 of file CommonJS.h.

◆ jsToU256()

u256 dev::jsToU256 ( std::string const &  _s)
inline

Definition at line 112 of file CommonJS.h.

◆ keyOf() [1/2]

NibbleSlice dev::keyOf ( bytesConstRef  _hpe)
inline

Definition at line 104 of file TrieCommon.h.

◆ keyOf() [2/2]

NibbleSlice dev::keyOf ( RLP const &  _twoItem)
inline

Definition at line 114 of file TrieCommon.h.

◆ keysOf() [1/2]

template<class T , class U >
std::vector<T> dev::keysOf ( std::map< T, U > const &  _m)

Definition at line 286 of file CommonData.h.

◆ keysOf() [2/2]

template<class T , class U >
std::vector<T> dev::keysOf ( std::unordered_map< T, U > const &  _m)

Definition at line 295 of file CommonData.h.

◆ memDump()

std::string dev::memDump ( bytes const &  _bytes,
unsigned  _width = 8,
bool  _html = false 
)

Nicely renders the given bytes to a string, optionally as HTML. _bytes: bytes array to be rendered as string. _width of a bytes line.

Definition at line 55 of file CommonIO.cpp.

◆ nibble()

byte dev::nibble ( bytesConstRef  _data,
unsigned  _i 
)
inline

Definition at line 31 of file TrieCommon.h.

◆ operator+() [1/3]

template<class T , class U >
std::set<T> dev::operator+ ( std::set< T >  _a,
U const &  _b 
)

Insert the contents of a container into a set.

Definition at line 267 of file CommonData.h.

◆ operator+() [2/3]

template<class T , class U >
std::unordered_set<T> dev::operator+ ( std::unordered_set< T >  _a,
U const &  _b 
)

Insert the contents of a container into an unordered_set.

Definition at line 273 of file CommonData.h.

◆ operator+() [3/3]

template<class T , class U >
std::vector<T> dev::operator+ ( std::vector< T >  _a,
U const &  _b 
)

Concatenate the contents of a container onto a vector.

Definition at line 279 of file CommonData.h.

◆ operator+=() [1/3]

template<class T , class U >
std::set<T>& dev::operator+= ( std::set< T > &  _a,
U const &  _b 
)

Insert the contents of a container into a set.

Definition at line 252 of file CommonData.h.

◆ operator+=() [2/3]

template<class T , class U >
std::unordered_set<T>& dev::operator+= ( std::unordered_set< T > &  _a,
U const &  _b 
)

Insert the contents of a container into an unordered_set.

Definition at line 260 of file CommonData.h.

◆ operator+=() [3/3]

template<class T , class U >
std::vector<T>& dev::operator+= ( std::vector< T > &  _a,
U const &  _b 
)
inline

Concatenate the contents of a container onto a vector.

Definition at line 244 of file CommonData.h.

◆ operator<<() [1/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
bigint _value 
)
inline

Definition at line 145 of file Log.h.

◆ operator<<() [2/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
bigint const &  _value 
)
inline

Definition at line 139 of file Log.h.

◆ operator<<() [3/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
bytesConstRef  _value 
)
inline

Definition at line 239 of file Log.h.

◆ operator<<() [4/30]

template<unsigned N>
boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
FixedHash< N > &  _value 
)
inline

Definition at line 189 of file Log.h.

◆ operator<<() [5/30]

template<unsigned N>
boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
FixedHash< N > const &  _value 
)
inline

Definition at line 182 of file Log.h.

◆ operator<<() [6/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
h160 _value 
)
inline

Definition at line 203 of file Log.h.

◆ operator<<() [7/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
h160 const &  _value 
)
inline

Definition at line 197 of file Log.h.

◆ operator<<() [8/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
h256 _value 
)
inline

Definition at line 217 of file Log.h.

◆ operator<<() [9/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
h256 const &  _value 
)
inline

Definition at line 211 of file Log.h.

◆ operator<<() [10/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
h512 _value 
)
inline

Definition at line 231 of file Log.h.

◆ operator<<() [11/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
h512 const &  _value 
)
inline

Definition at line 225 of file Log.h.

◆ operator<<() [12/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
u160 _value 
)
inline

Definition at line 173 of file Log.h.

◆ operator<<() [13/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
u160 const &  _value 
)
inline

Definition at line 167 of file Log.h.

◆ operator<<() [14/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
u256 _value 
)
inline

Definition at line 159 of file Log.h.

◆ operator<<() [15/30]

boost::log::formatting_ostream& dev::operator<< ( boost::log::formatting_ostream &  _strm,
u256 const &  _value 
)
inline

Definition at line 153 of file Log.h.

◆ operator<<() [16/30]

std::ostream& dev::operator<< ( std::ostream &  _out,
bytes const &  _e 
)
inline

Definition at line 77 of file CommonIO.h.

◆ operator<<() [17/30]

std::ostream & dev::operator<< ( std::ostream &  _out,
dev::RLP const &  _d 
)

Human readable version of RLP.

Definition at line 366 of file RLP.cpp.

◆ operator<<() [18/30]

template<unsigned N>
std::ostream& dev::operator<< ( std::ostream &  _out,
FixedHash< N > const &  _h 
)
inline

Stream I/O for the FixedHash class.

Definition at line 328 of file FixedHash.h.

◆ operator<<() [19/30]

template<class DB >
std::ostream& dev::operator<< ( std::ostream &  _out,
GenericTrieDB< DB > const &  _db 
)

Definition at line 306 of file TrieDB.h.

◆ operator<<() [20/30]

std::ostream& dev::operator<< ( std::ostream &  _out,
NibbleSlice const &  _m 
)
inline

Definition at line 90 of file TrieCommon.h.

◆ operator<<() [21/30]

std::ostream& dev::operator<< ( std::ostream &  _out,
RangeMask const &  _r 
)
inline

Definition at line 224 of file RangeMask.h.

◆ operator<<() [22/30]

template<unsigned N>
std::ostream& dev::operator<< ( std::ostream &  _out,
SecureFixedHash< N > const &  _h 
)
inline

Stream I/O for the SecureFixedHash class.

Definition at line 345 of file FixedHash.h.

◆ operator<<() [23/30]

template<class Generic , class KeyType >
std::ostream& dev::operator<< ( std::ostream &  _out,
SpecificTrieDB< Generic, KeyType > const &  _db 
)

Definition at line 356 of file TrieDB.h.

◆ operator<<() [24/30]

std::ostream& dev::operator<< ( std::ostream &  _out,
StateCacheDB const &  _m 
)
inline

Definition at line 81 of file StateCacheDB.h.

◆ operator<<() [25/30]

template<class T , std::size_t Z>
std::ostream & dev::operator<< ( std::ostream &  _out,
std::array< T, Z > const &  _e 
)
inline

Definition at line 138 of file CommonIO.h.

◆ operator<<() [26/30]

template<class T >
std::ostream& dev::operator<< ( std::ostream &  _out,
std::set< T > const &  _e 
)
inline

Definition at line 150 of file CommonIO.h.

◆ operator<<() [27/30]

template<class T , class U >
std::ostream& dev::operator<< ( std::ostream &  _out,
std::set< T, U > const &  _e 
)
inline

◆ operator<<() [28/30]

template<class T >
std::ostream& dev::operator<< ( std::ostream &  _out,
std::unordered_set< T > const &  _e 
)
inline

Definition at line 162 of file CommonIO.h.

◆ operator<<() [29/30]

template<class T , class U >
std::ostream& dev::operator<< ( std::ostream &  _out,
std::unordered_set< T, U > const &  _e 
)
inline

◆ operator<<() [30/30]

template<class T >
std::ostream & dev::operator<< ( std::ostream &  _out,
std::vector< T > const &  _e 
)
inline

Definition at line 122 of file CommonIO.h.

◆ operator>>()

template<unsigned N>
std::istream& dev::operator>> ( std::istream &  _in,
FixedHash< N > &  o_h 
)
inline

Definition at line 335 of file FixedHash.h.

◆ orderedTrieRoot() [1/2]

h256 dev::orderedTrieRoot ( std::vector< bytes > const &  _data)

Definition at line 112 of file TrieHash.cpp.

◆ orderedTrieRoot() [2/2]

h256 dev::orderedTrieRoot ( std::vector< bytesConstRef > const &  _data)

Definition at line 121 of file TrieHash.cpp.

◆ padded()

bytes dev::padded ( bytes  _b,
unsigned  _l 
)

Add '0' on, or remove items from, the front of _b until it is of length _l.

Definition at line 47 of file CommonJS.cpp.

◆ paddedRight()

bytes dev::paddedRight ( bytes  _b,
unsigned  _l 
)

Add '0' on, or remove items from, the back of _b until it is of length _l.

Definition at line 54 of file CommonJS.cpp.

◆ pbkdf2()

bytesSec dev::pbkdf2 ( std::string const &  _pass,
bytes const &  _salt,
unsigned  _iterations,
unsigned  _dkLen = 32 
)

Derive key via PBKDF2.

◆ prettyU256()

std::string dev::prettyU256 ( u256  _n,
bool  _abridged 
)

Convert u256 into user-readable string. Returns int/hex value of 64 bits int, hex of 160 bits FixedHash. As a fallback try to handle input as h256.

Definition at line 29 of file CommonJS.cpp.

◆ pushFront()

template<class T , class _U >
void dev::pushFront ( T &  _t,
_U  _e 
)

Pushes an element on to the front of a collection. Only works for POD element types.

Definition at line 234 of file CommonData.h.

◆ recover()

Public dev::recover ( Signature const &  _sig,
h256 const &  _hash 
)

Recovers Public key from signed message hash.

Definition at line 221 of file Common.cpp.

◆ ref() [1/4]

template<class _T >
vector_ref<_T> dev::ref ( _T &  _t)

Definition at line 110 of file vector_ref.h.

◆ ref() [2/4]

template<class _T >
vector_ref<_T const> dev::ref ( _T const &  _t)

Definition at line 109 of file vector_ref.h.

◆ ref() [3/4]

template<class _T >
vector_ref<_T> dev::ref ( std::vector< _T > &  _t)

Definition at line 112 of file vector_ref.h.

◆ ref() [4/4]

template<class _T >
vector_ref<_T const> dev::ref ( std::vector< _T > const &  _t)

Definition at line 111 of file vector_ref.h.

◆ requireJsonFields()

void dev::requireJsonFields ( json_spirit::mObject const &  _o,
std::string const &  _configName,
std::map< std::string, JsonFieldOptions > const &  _validationMap 
)

Check the json object with validation map that reuires certain field of certain type to be present in json

Parameters
_oa json object to check
_configNamea string with json object name. Will apper in error message.
_validationMapa map with json objects that would be checked. "objName" -> {js::str_type, jsonField::Required}

Definition at line 59 of file JsonUtils.cpp.

◆ right160()

h160 dev::right160 ( h256 const &  _t)
inline

Convert the given value into h160 (160-bit unsigned integer) using the right 20 bytes.

Definition at line 369 of file FixedHash.h.

◆ ripemd160()

h160 dev::ripemd160 ( bytesConstRef  _input)

Definition at line 400 of file Hash.cpp.

◆ rlp()

template<class _T >
bytes dev::rlp ( _T  _t)

Export a single item in RLP format, returning a byte array.

Definition at line 453 of file RLP.h.

◆ rlp256()

bytes dev::rlp256 ( BytesMap const &  _s)

Definition at line 94 of file TrieHash.cpp.

◆ rlpList() [1/2]

bytes dev::rlpList ( )
inline

Export a list of items in RLP format, returning a byte array.

Definition at line 456 of file RLP.h.

◆ rlpList() [2/2]

template<class ... _Ts>
bytes dev::rlpList ( _Ts ...  _ts)

Definition at line 457 of file RLP.h.

◆ rlpListAux() [1/2]

template<class _T >
void dev::rlpListAux ( RLPStream _out,
_T  _t 
)

Definition at line 449 of file RLP.h.

◆ rlpListAux() [2/2]

template<class _T , class ... _Ts>
void dev::rlpListAux ( RLPStream _out,
_T  _t,
_Ts ...  _ts 
)

Definition at line 450 of file RLP.h.

◆ s2u()

u256 dev::s2u ( s256  _u)
inline
Returns
the two's complement signed representation of the signed number _u.

Definition at line 161 of file Common.h.

◆ scrypt()

bytesSec dev::scrypt ( std::string const &  _pass,
bytes const &  _salt,
uint64_t  _n,
uint32_t  _r,
uint32_t  _p,
unsigned  _dkLen 
)

Derive key via Scrypt.

Definition at line 313 of file Common.cpp.

◆ setDataDir()

void dev::setDataDir ( boost::filesystem::path const &  _dir)

Sets the data dir for the default ("ethereum") prefix.

◆ setDefaultOrCLocale()

void dev::setDefaultOrCLocale ( )

Definition at line 113 of file Common.cpp.

◆ setIpcPath()

void dev::setIpcPath ( boost::filesystem::path const &  _ipcPath)

Sets the ipc socket dir.

◆ setThreadName()

void dev::setThreadName ( std::string const &  _n)

Set the current thread's log name.

It appears that there is not currently any cross-platform way of setting thread names either in Boost or in the C++11 runtime libraries. What is more, the API for 'pthread_setname_np' is not even consistent across platforms which implement it.

A proposal to add such functionality on the Boost mailing list, which I assume never happened, but which I should follow-up and ask about. http://boost.2283326.n4.nabble.com/Adding-an-option-to-set-the-name-of-a-boost-thread-td4638283.html

man page for 'pthread_setname_np', including this crucial snippet of information ... "These functions are nonstandard GNU extensions." http://man7.org/linux/man-pages/man3/pthread_setname_np.3.html

Stack Overflow "Can I set the name of a thread in pthreads / linux?" which includes useful information on the minor API differences between Linux, BSD and OS X. http://stackoverflow.com/questions/2369738/can-i-set-the-name-of-a-thread-in-pthreads-linux/7989973#7989973

musl mailng list posting "pthread set name on MIPs" which includes the information that musl doesn't currently implement 'pthread_setname_np' https://marc.info/?l=musl&m=146171729013062&w=1

For better formatting it is recommended to limit thread name to max 4 characters.

Definition at line 119 of file Log.cpp.

◆ setupLogging()

void dev::setupLogging ( LoggingOptions const &  _options)

Definition at line 130 of file Log.cpp.

◆ sha256()

h256 dev::sha256 ( bytesConstRef  _input)
noexcept

Definition at line 30 of file Hash.cpp.

◆ sha3() [1/9]

h256 dev::sha3 ( bytes const &  _input)
inlinenoexcept

Calculate SHA3-256 hash of the given input, returning as a 256-bit hash.

Definition at line 58 of file SHA3.h.

◆ sha3() [2/9]

h256 dev::sha3 ( bytesConstRef  _input)
inlinenoexcept

Calculate SHA3-256 hash of the given input, returning as a 256-bit hash.

Definition at line 43 of file SHA3.h.

◆ sha3() [3/9]

bool dev::sha3 ( bytesConstRef  _input,
bytesRef  o_output 
)
noexcept

Calculate SHA3-256 hash of the given input and load it into the given output.

Returns
false if o_output.size() != 32.

Definition at line 28 of file SHA3.cpp.

◆ sha3() [4/9]

SecureFixedHash<32> dev::sha3 ( bytesSec const &  _input)
inlinenoexcept

Fully secure variants are equivalent for sha3 and sha3Secure.

Definition at line 100 of file SHA3.h.

◆ sha3() [5/9]

template<unsigned N>
h256 dev::sha3 ( FixedHash< N > const &  _input)
inlinenoexcept

Calculate SHA3-256 hash of the given input (presented as a FixedHash), returns a 256-bit hash.

Definition at line 88 of file SHA3.h.

◆ sha3() [6/9]

h256 dev::sha3 ( h256 const &  _input)
inlinenoexcept

Keccak hash variant optimized for hashing 256-bit hashes.

Definition at line 80 of file SHA3.h.

◆ sha3() [7/9]

template<unsigned N>
SecureFixedHash<32> dev::sha3 ( SecureFixedHash< N > const &  _input)
inlinenoexcept

Definition at line 111 of file SHA3.h.

◆ sha3() [8/9]

h256 dev::sha3 ( std::string const &  _input)
inlinenoexcept

Calculate SHA3-256 hash of the given input (presented as a binary-filled string), returning as a 256-bit hash.

Definition at line 69 of file SHA3.h.

◆ sha3() [9/9]

std::string dev::sha3 ( std::string const &  _input,
bool  _isNibbles 
)
inline

Calculate SHA3-256 hash of the given input, possibly interpreting it as nibbles, and return the hash as a string filled with binary data.

Definition at line 123 of file SHA3.h.

◆ sha3mac()

void dev::sha3mac ( bytesConstRef  _secret,
bytesConstRef  _plain,
bytesRef  _output 
)
inline

Calculate SHA3-256 MAC.

Definition at line 129 of file SHA3.h.

◆ sha3Secure() [1/6]

SecureFixedHash<32> dev::sha3Secure ( bytes const &  _input)
inlinenoexcept

Definition at line 63 of file SHA3.h.

◆ sha3Secure() [2/6]

SecureFixedHash<32> dev::sha3Secure ( bytesConstRef  _input)
inlinenoexcept

Definition at line 50 of file SHA3.h.

◆ sha3Secure() [3/6]

SecureFixedHash<32> dev::sha3Secure ( bytesSec const &  _input)
inlinenoexcept

Definition at line 105 of file SHA3.h.

◆ sha3Secure() [4/6]

template<unsigned N>
SecureFixedHash<32> dev::sha3Secure ( FixedHash< N > const &  _input)
inlinenoexcept

Definition at line 94 of file SHA3.h.

◆ sha3Secure() [5/6]

template<unsigned N>
SecureFixedHash<32> dev::sha3Secure ( SecureFixedHash< N > const &  _input)
inlinenoexcept

Definition at line 117 of file SHA3.h.

◆ sha3Secure() [6/6]

SecureFixedHash<32> dev::sha3Secure ( std::string const &  _input)
inlinenoexcept

Definition at line 74 of file SHA3.h.

◆ sharedNibbles()

unsigned dev::sharedNibbles ( bytesConstRef  _first,
unsigned  _beginFirst,
unsigned  _endFirst,
bytesConstRef  _second,
unsigned  _beginSecond,
unsigned  _endSecond 
)
inline

Interprets _first and _second as vectors of nibbles and returns the length of the longest common prefix of _first[_beginFirst..._endFirst] and _second[_beginSecond..._endSecond].

Definition at line 38 of file TrieCommon.h.

◆ sign()

Signature dev::sign ( Secret const &  _k,
h256 const &  _hash 
)

Returns siganture of message hash.

Definition at line 251 of file Common.cpp.

◆ streamout() [1/4]

template<class T , std::size_t Z>
std::ostream& dev::streamout ( std::ostream &  _out,
std::array< T, Z > const &  _e 
)
inline

Definition at line 125 of file CommonIO.h.

◆ streamout() [2/4]

template<class T >
std::ostream& dev::streamout ( std::ostream &  _out,
std::set< T > const &  _v 
)

Definition at line 141 of file CommonIO.h.

◆ streamout() [3/4]

template<class T >
std::ostream& dev::streamout ( std::ostream &  _out,
std::unordered_set< T > const &  _v 
)

Definition at line 153 of file CommonIO.h.

◆ streamout() [4/4]

template<class T >
std::ostream& dev::streamout ( std::ostream &  _out,
std::vector< T > const &  _e 
)
inline

Definition at line 109 of file CommonIO.h.

◆ toAddress() [1/3]

Address dev::toAddress ( Address const &  _from,
u256 const &  _nonce 
)

Definition at line 115 of file Common.cpp.

◆ toAddress() [2/3]

Address dev::toAddress ( Public const &  _public)

Convert a public key to address.

Definition at line 105 of file Common.cpp.

◆ toAddress() [3/3]

Address dev::toAddress ( Secret const &  _secret)

Convert a secret key into address of public key equivalent.

Returns
0 if it's not a valid secret key.

Definition at line 110 of file Common.cpp.

◆ toBase64()

string dev::toBase64 ( bytesConstRef  _in)

Definition at line 49 of file Base64.cpp.

◆ toBigEndian() [1/3]

template<class T , class Out >
void dev::toBigEndian ( _val,
Out &  o_out 
)
inline

Converts a templated integer value to the big-endian byte-stream represented on a templated collection. The size of the collection object will be unchanged. If it is too small, it will not represent the value properly, if too big then the additional elements will be zeroed out. Out will typically be either std::string or bytes. T will typically by unsigned, u160, u256 or bigint.

Definition at line 124 of file CommonData.h.

◆ toBigEndian() [2/3]

bytes dev::toBigEndian ( u160  _val)
inline

Definition at line 150 of file CommonData.h.

◆ toBigEndian() [3/3]

bytes dev::toBigEndian ( u256  _val)
inline

Definition at line 149 of file CommonData.h.

◆ toBigEndianString() [1/2]

std::string dev::toBigEndianString ( u160  _val)
inline

Definition at line 148 of file CommonData.h.

◆ toBigEndianString() [2/2]

std::string dev::toBigEndianString ( u256  _val)
inline

Convenience functions for toBigEndian.

Definition at line 147 of file CommonData.h.

◆ toCompactBigEndian() [1/2]

bytes dev::toCompactBigEndian ( byte  _val,
unsigned  _min = 0 
)
inline

Definition at line 164 of file CommonData.h.

◆ toCompactBigEndian() [2/2]

template<class T >
bytes dev::toCompactBigEndian ( _val,
unsigned  _min = 0 
)
inline

Convenience function for toBigEndian.

Returns
a byte array just big enough to represent _val.

Definition at line 155 of file CommonData.h.

◆ toCompactBigEndianString()

template<class T >
std::string dev::toCompactBigEndianString ( _val,
unsigned  _min = 0 
)
inline

Convenience function for toBigEndian.

Returns
a string just big enough to represent _val.

Definition at line 172 of file CommonData.h.

◆ toCompactHex()

std::string dev::toCompactHex ( u256  _val,
unsigned  _min = 0 
)
inline

Definition at line 182 of file CommonData.h.

◆ toCompactHexPrefixed()

std::string dev::toCompactHexPrefixed ( u256  _val,
unsigned  _min = 0 
)
inline

Definition at line 187 of file CommonData.h.

◆ toHex() [1/2]

template<class Iterator >
std::string dev::toHex ( Iterator  _it,
Iterator  _end,
std::string const &  _prefix 
)

Definition at line 46 of file CommonData.h.

◆ toHex() [2/2]

template<class T >
std::string dev::toHex ( T const &  _data)

Definition at line 65 of file CommonData.h.

◆ toHexPrefixed()

template<class T >
std::string dev::toHexPrefixed ( T const &  _data)

Definition at line 72 of file CommonData.h.

◆ toJS() [1/6]

template<unsigned N>
std::string dev::toJS ( boost::multiprecision::number< boost::multiprecision::cpp_int_backend< N, N, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void >> const &  _n)

Definition at line 38 of file CommonJS.h.

◆ toJS() [2/6]

std::string dev::toJS ( byte  _b)
inline

Definition at line 28 of file CommonJS.h.

◆ toJS() [3/6]

std::string dev::toJS ( bytes const &  _n,
std::size_t  _padding = 0 
)
inline

Definition at line 46 of file CommonJS.h.

◆ toJS() [4/6]

template<unsigned S>
std::string dev::toJS ( FixedHash< S > const &  _h)

Definition at line 33 of file CommonJS.h.

◆ toJS() [5/6]

template<unsigned T>
std::string dev::toJS ( SecureFixedHash< T > const &  _i)

Definition at line 56 of file CommonJS.h.

◆ toJS() [6/6]

template<typename T >
std::string dev::toJS ( T const &  _i)

Definition at line 63 of file CommonJS.h.

◆ toLog2()

unsigned int dev::toLog2 ( u256  _x)
inline
Returns
the smallest n >= 0 such that (1 << n) >= _x

Definition at line 174 of file Common.h.

◆ toPublic()

Public dev::toPublic ( Secret const &  _secret)

Convert a secret key into the public key equivalent.

Definition at line 80 of file Common.cpp.

◆ toPublicCompressed()

PublicCompressed dev::toPublicCompressed ( Secret const &  _secret)

Convert a secret key into the public key in compressed format.

Definition at line 93 of file Common.cpp.

◆ toString() [1/3]

template<class _T >
std::string dev::toString ( _T const &  _t)
inline

Converts arbitrary value to string representation using std::stringstream.

Definition at line 168 of file CommonIO.h.

◆ toString() [2/3]

std::string dev::toString ( h256s const &  _bs)
inline

Definition at line 380 of file FixedHash.h.

◆ toString() [3/3]

template<class T >
std::string dev::toString ( std::chrono::time_point< T > const &  _e,
std::string const &  _format = "%F %T" 
)
inline

Definition at line 86 of file CommonIO.h.

◆ toString< std::string >()

template<>
std::string dev::toString< std::string > ( std::string const &  _s)
inline

Definition at line 176 of file CommonIO.h.

◆ toString< uint8_t >()

template<>
std::string dev::toString< uint8_t > ( uint8_t const &  _u)
inline

Definition at line 182 of file CommonIO.h.

◆ toUUID()

std::string dev::toUUID ( h128 const &  _uuid)

Definition at line 38 of file FixedHash.cpp.

◆ trieRootOver()

template<class T , class U >
h256 dev::trieRootOver ( unsigned  _itemCount,
T const &  _getKey,
U const &  _getValue 
)
inline

Definition at line 36 of file TrieHash.h.

◆ trimFront()

template<class T >
void dev::trimFront ( T &  _t,
unsigned  _elements 
)

Trims a given number of elements from the front of a collection. Only works for POD element types.

Definition at line 224 of file CommonData.h.

◆ u2s()

s256 dev::u2s ( u256  _u)
inline

Interprets _u as a two's complement signed number and returns the resulting s256.

Definition at line 151 of file Common.h.

◆ uniqueInUse()

byte dev::uniqueInUse ( RLP const &  _orig,
byte  except 
)

Definition at line 116 of file TrieCommon.cpp.

◆ unpadded()

bytes dev::unpadded ( bytes  _b)

Removing all trailing '0'. Returns empty array if input contains only '0' char.

Definition at line 60 of file CommonJS.cpp.

◆ unpadLeft()

bytes dev::unpadLeft ( bytes  _b)

Remove all 0 byte on the head of _s.

Definition at line 67 of file CommonJS.cpp.

◆ utcTime()

int64_t dev::utcTime ( )

Get the current time in seconds since the epoch in UTC.

Definition at line 53 of file Common.cpp.

◆ validateFieldNames()

void dev::validateFieldNames ( json_spirit::mObject const &  _obj,
std::set< std::string > const &  _allowedFields 
)

Definition at line 25 of file JsonUtils.cpp.

◆ valuesOf() [1/2]

template<class T , class U >
std::vector<U> dev::valuesOf ( std::map< T, U > const &  _m)

Definition at line 304 of file CommonData.h.

◆ valuesOf() [2/2]

template<class T , class U >
std::vector<U> dev::valuesOf ( std::unordered_map< T, U > const &  _m)

Definition at line 314 of file CommonData.h.

◆ verify() [1/2]

bool dev::verify ( Public const &  _k,
Signature const &  _s,
h256 const &  _hash 
)

Verify signature.

Definition at line 273 of file Common.cpp.

◆ verify() [2/2]

bool dev::verify ( PublicCompressed const &  _key,
h512 const &  _signature,
h256 const &  _hash 
)

Definition at line 281 of file Common.cpp.

◆ writeFile() [1/2]

void dev::writeFile ( boost::filesystem::path const &  _file,
bytes const &  _data,
bool  _writeDeleteRename = false 
)
inline

Write the given binary data into the given file, replacing the file if it pre-exists.

Definition at line 61 of file CommonIO.h.

◆ writeFile() [2/2]

void dev::writeFile ( boost::filesystem::path const &  _file,
bytesConstRef  _data,
bool  _writeDeleteRename = false 
)

Write the given binary data into the given file, replacing the file if it pre-exists. Throws exception on error.

Parameters
_writeDeleteRenameuseful not to lose any data: If set, first writes to another file in the same directory and then moves that file.

Definition at line 125 of file CommonIO.cpp.

Variable Documentation

◆ EmptyListSHA3

h256 const dev::EmptyListSHA3 = sha3(rlpList())

Definition at line 26 of file SHA3.cpp.

◆ EmptySHA3

h256 const dev::EmptySHA3 = sha3(bytesConstRef())

Definition at line 25 of file SHA3.cpp.

◆ EmptyString

std::string const dev::EmptyString

Definition at line 34 of file Common.cpp.

◆ EmptyTrie

const h256 dev::EmptyTrie = sha3(rlp(""))

Definition at line 28 of file TrieCommon.cpp.

◆ Invalid256

constexpr u256 dev::Invalid256
constexpr
Initial value:
=
0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff_cppui256

Definition at line 147 of file Common.h.

◆ MaxAddress

Address const dev::MaxAddress {"0xffffffffffffffffffffffffffffffffffffffff"}

The last address.

Definition at line 23 of file Address.cpp.

◆ NullBytes

bytes const dev::NullBytes

Definition at line 33 of file Common.cpp.

◆ RLPEmptyList

bytes dev::RLPEmptyList = rlpList()

The empty list in RLP format.

Definition at line 23 of file RLP.cpp.

◆ RLPNull

bytes dev::RLPNull = rlp("")

The empty string in RLP format.

Definition at line 22 of file RLP.cpp.

◆ s_fixedHashEngine

std::random_device dev::s_fixedHashEngine

Definition at line 24 of file FixedHash.cpp.

◆ SystemAddress

Address const dev::SystemAddress {"0xfffffffffffffffffffffffffffffffffffffffe"}

The SYSTEM address.

Definition at line 24 of file Address.cpp.

◆ Version

char const * dev::Version = aleth_get_buildinfo()->project_version

Definition at line 32 of file Common.cpp.

◆ ZeroAddress

Address const dev::ZeroAddress

The zero address.

Definition at line 22 of file Address.cpp.