struct arisen::name

Public Types

Type

Name

uint64_t

raw { }

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 arisen::name::value;

Public Functions Documentation

function name (1/4)

constexpr arisen::name::name()

Construct a new name object defaulting to a value of 0.

Construct a new name

function name (2/4)

explicit constexpr arisen::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 arisen::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 arisen::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 arisen::name::length() const

function suffix

constexpr name arisen::name::suffix() const

function operator raw

constexpr arisen::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* arisen::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 arisen::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 arisen::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 arisen::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/arisenlib/core/arisen/name.hpp