51 const char*
c_str()
const {
return _internal->c_str; }
54 const std::string&
string()
const {
return *_internal->string; }
57 std::string_view
string_view()
const {
return {_internal->c_str, _internal->size}; }
60 std::size_t
size()
const {
return _internal->size; }
63 std::size_t
hash()
const {
return _internal->hash; }
81 std::unique_ptr<std::string>
string;
85 const _InternalToken* _internal;
91 template<>
struct std::hash<
maquina::Token>
std::size_t hash() const
Return a string hash, this is fast.
Definition: Token.h:63
std::size_t size() const
Return the token size, this is fast.
Definition: Token.h:60
bool operator<(const Token &o) const
Definition: Token.h:68
This version of the SDK is unstable, i-e, it may change with no warning.
Definition: AddCurveAction.h:20
Token & operator=(const Token &o)
Copy a token, this is fast.
Definition: Token.h:48
Token(const Token &o)
Copy a token, this is fast.
Definition: Token.h:45
const char * c_str() const
Return a string pointer, this is fast.
Definition: Token.h:51
std::size_t operator()(const maquina::Token &token) const
Definition: Token.h:93
Token & operator=(Token &&)=delete
MAQUINA_EXPORT void release()
When the Rumba Engine is embedded in an application, this function should be called before to leave t...
bool operator>(const Token &o) const
Definition: Token.h:70
#define MAQUINA_EXPORT
Definition: Export.h:31
friend class TokenManager
Definition: Token.h:35
const std::string & string() const
Return a string object, this is fast.
Definition: Token.h:54
std::string_view string_view() const
Return a string_view object, this is fast.
Definition: Token.h:57
bool operator==(const Token &o) const
Comparisons are fast.
Definition: Token.h:66
bool operator<=(const Token &o) const
Definition: Token.h:69
bool operator>=(const Token &o) const
Definition: Token.h:71
A token is a shared, constant and unique string.
Definition: Token.h:33
bool operator!=(const Token &o) const
Definition: Token.h:67