Work with rexylib after small string optimization
This commit is contained in:
parent
d1a7c3cf9c
commit
d2af423057
@ -138,7 +138,7 @@ namespace rjp{
|
||||
|
||||
private:
|
||||
RJP_value* add_member_impl(const rexy::string_base<char>& key);
|
||||
RJP_value* add_member_impl(rexy::string_base<char>&& key);
|
||||
RJP_value* add_member_impl(string&& key);
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@ -130,7 +130,7 @@ namespace rjp{
|
||||
RJP_value* object::add_member_impl(const rexy::string_base<char>& key){
|
||||
return rjp_new_member(m_value, key.get(), key.length());
|
||||
}
|
||||
RJP_value* object::add_member_impl(rexy::string_base<char>&& key){
|
||||
RJP_value* object::add_member_impl(string&& key){
|
||||
auto length = key.length();
|
||||
return rjp_new_member_steal_key(m_value, key.release(), length);
|
||||
}
|
||||
|
||||
@ -40,9 +40,9 @@ namespace rjp{
|
||||
return *this;
|
||||
reset();
|
||||
RJP_string* str = rjp_get_string(r);
|
||||
m_data = std::exchange(str->value, nullptr);
|
||||
m_length = str->length;
|
||||
m_cap = str->length;
|
||||
set_long_ptr(std::exchange(str->value, nullptr));
|
||||
set_long_length(str->length);
|
||||
set_long_capacity(str->length);
|
||||
str->length = 0;
|
||||
return *this;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user