Synopsis

Declared in <bslstl_stringref.h>

template<>
class StringRefImp<char>
    : public StringRefData<char>

Base Classes

Name

Description

StringRefData<char>

This class is an intermediate link between bslstl::StringRef used in BDE and bsl::string_view and is kept only for compatibility with legacy code.

Type Aliases

Name

Description

const_iterator

Alias for a constant iterator over the characters of this ref.

const_reference

This typedef is an alias to reference.

const_reverse_iterator

This typedef is an alias to bsl::reverse_iterator<const_iterator>.

difference_type

This typedef is an alias to std::ptrdiff_t.

iterator

This typedef is an alias to value_type const *.

reference

This typedef is an alias to value_type const&.

size_type

Standard Library general container requirements.

value_type

Alias for a constant character type stored in this string ref.

Member Functions

Name

Description

StringRefImp [constructor]

Constructors

assign

assign overloads

begin

Return an STL‐compatible iterator to the first character of the string bound to this string reference or end() if the string reference is empty. The iterator remains valid as long as this object is valid and is bound to the same string.

compare

Compare this and the specified other string objects using a lexicographical comparison and return a negative value if this string is less than other string, a positive value if this string is greater than other string, and 0 if this string is equal to other string.

data

Return the address of the first character of the string bound to this string reference such that [data() .. data()+length())] is a valid half‐open range of characters. Note that the range of characters might not be null‐terminated and may contain embedded null characters.

empty

Return true if this object represents an empty string value, and false otherwise. This object represents an empty string value if begin() == end(). Note that this method is functionally identical with the isEmpty method and allows developers to avoid distracting syntax differences when StringRef appears in juxtaposition with string, which defines empty but not isEmpty.

end

Return an STL‐compatible iterator one‐past‐the‐last character of the string bound to this string reference or begin() if the string reference is empty. The iterator remains valid as long as this object is valid and is bound to the same string.

isEmpty

Return true if this object represents an empty string value, and false otherwise. This object represents an empty string value if begin() == end().

length

Return the length of the string referred to by this object. Note that this call is equivalent to end() ‐ begin().

operator[]

Return a reference providing a non‐modifiable access to the character at the specified index in the string bound to this reference. This reference remains valid as long as the string currently bound to this object remains valid. The behavior is undefined unless 0 <= index < length().

rbegin

Return an STL‐compatible reverse iterator to the last character of the string bound to this string reference or rend() if the string reference is empty. The iterator remains valid as long as this object is valid and is bound to the same string.

rend

Return an STL‐compatible reverse iterator to the prior‐to‐the‐beginning character of the string bound to this string reference or rbegin() if the string reference is empty. The iterator remains valid as long as this object is valid and is bound to the same string.

reset

Reset this string reference to the default‐constructed state having an empty std::string value and the following attribute values: ` begin() == end() isEmpty() == true `

size

Return the number of characters in the string referred to by this object. Note that this call is equivalent to end() ‐ begin().

operator BloombergLP::bslmf::NestedTraitDeclaration<StringRefData<char>, is_trivially_copyable>

operator BloombergLP::bslmf::NestedTraitDeclaration<StringRefImp<char>, is_trivially_copyable>

Nested trait declaration for bsl::is_trivially_copyable.

operator std::basic_string<char>

Return an std::basic_string (synonymous with std::basic_string) having the value of the string bound to this string reference.

Static Member Functions

Name

Description

cStringLength

Return the number of CHAR_TYPE characters in the specified null‐terminated data string, up to but not including the terminal null value.

Created with MrDocs