struct eosio::name
Class List > eosio :: name
Public Types
Type | Name |
---|---|
enum | raw { } |
Public Attributes
Type | Name |
---|---|
uint64_t | value |
Public Functions
Type | Name |
---|---|
constexpr | name () Construct a new name object defaulting to a value of 0. |
constexpr | name (uint64_t v) Construct a new name object initialising value with v. |
constexpr | name (name::raw r) Construct a new name object initialising value with r. |
constexpr | name (std::string_view str) Construct a new name object initialising value with str. |
constexpr uint8_t | length () const |
constexpr name | suffix () const |
constexpr | operator raw () const |
constexpr | operator bool () const |
char * | write_as_string (char * begin, char * end, bool dry_run = false) const |
std::string | to_string () const Returns the name value as a string by calling write_as_string() and returning the buffer produced by write_as_string() |
void | print () const |
Public Static Functions
Type | Name |
---|---|
static constexpr uint8_t | char_to_value (char c) |
Friends
Type | Name |
---|---|
friend DataStream & | operator<< |
friend DataStream & | operator>> |
Detailed Description
Wraps a uint64_t to ensure it is only passed to methods that expect a name. Ensures value is only passed to methods that expect a name and that no mathematical operations occur. Also enables specialization of print
Public Types Documentation
enum raw
enum eosio::name::raw {
};
Public Attributes Documentation
variable value
uint64_t eosio::name::value;
Public Functions Documentation
function name (1/4)
constexpr eosio::name::name()
Construct a new name object defaulting to a value of 0.
Construct a new name
function name (2/4)
explicit constexpr eosio::name::name(
uint64_t v
)
Construct a new name object initialising value with v.
Construct a new name given a unit64_t value
Parameters:
- v - The unit64_t value
function name (3/4)
explicit constexpr eosio::name::name(
name::raw r
)
Construct a new name object initialising value with r.
Construct a new name given a scoped enumerated type of raw (uint64_t).
Parameters:
- r - The raw value which is a scoped enumerated type of unit64_t
function name (4/4)
explicit constexpr eosio::name::name(
std::string_view str
)
Construct a new name object initialising value with str.
Construct a new name given an string.
Parameters:
- str - The string value which validated then converted to unit64_t
function length
constexpr uint8_t eosio::name::length() const
Returns the length of the name
function suffix
constexpr name eosio::name::suffix() const
Returns the suffix of the name
function operator raw
constexpr eosio::name::operator raw() const
Casts a name to raw
Returns:
Returns an instance of raw based on the value of a name
function operator bool
explicit constexpr eosio::name::operator bool() const
Explicit cast to bool of the uint64_t value of the name
Returns:
Returns true if the name is set to the default value of 0 else true.
function write_as_string
char* eosio::name::write_as_string(
char * begin,
char * end,
bool dry_run = false
) const
Writes the name as a string to the provided char buffer
Precondition:
The range [begin, end) must be a valid range of memory to write to.
Parameters:
- begin - The start of the char buffer
- end - Just past the end of the char buffer
- dry_run - If true, do not actually write anything into the range.
Returns:
char* - Just past the end of the last character that would be written assuming dry_run == false and end was large enough to provide sufficient space. (Meaning only applies if returned pointer >= begin.)
Post
If the output string fits within the range [begin, end) and dry_run == false, the range [begin, returned pointer) contains the string representation of the name. Nothing is written if dry_run == true or returned pointer > end (insufficient space) or if returned pointer < begin (overflow in calculating desired end).
function to_string
std::string eosio::name::to_string() const
Returns the name value as a string by calling write_as_string() and returning the buffer produced by write_as_string()
Returns the name as a string.
function print
void eosio::name::print() const
Prints an names as base32 encoded string
Parameters:
- name to be printed
Public Static Functions Documentation
function char_to_value
static static constexpr uint8_t eosio::name::char_to_value(
char c
)
Converts a name Base32 symbol into its corresponding value
Parameters:
- c - Character to be converted
Returns:
constexpr char - Converted value
Friends Documentation
friend operator<<
template<typename DataStream>
DataStream& operator<<(
DataStream & ds,
const name & t
)
friend operator>>
template<typename DataStream>
DataStream& operator>>(
DataStream & ds,
name & t
)
The documentation for this class was generated from the following file: libraries/eosiolib/core/eosio/name.hpp