| Tide 0.1.0 | 
String primitive element. More...
#include <tide/string_element.h>


| Public Member Functions | |
| StringElement (uint32_t id, std::string value) | |
| Create a new string element with no default. | |
| StringElement (uint32_t id, std::string value, std::string default_value) | |
| Create a new string element with a default value. | |
| virtual StringElement & | operator= (std::string const &rhs) | 
| Value assignment operator. | |
| virtual uint64_t | padding () const | 
| Get the amount of padding used. | |
| virtual void | padding (uint64_t padding) | 
| Set the amount of padding to use. | |
| virtual std::streamsize | write_body (std::ostream &output) | 
| Element body writing. | |
| Protected Member Functions | |
| virtual std::streamsize | body_size () const | 
| Get the size of the body of this element. | |
| virtual std::streamsize | read_body (std::istream &input, std::streamsize size) | 
| Element body loading. | |
| Protected Attributes | |
| uint64_t | padding_ | 
String primitive element.
This element stores a UTF-8 string. Upon writing to a store, the string may or may not be padded with null bytes.
Definition at line 46 of file string_element.h.
| tide::StringElement::StringElement | ( | uint32_t | id, | 
| std::string | value | ||
| ) | 
Create a new string element with no default.
| [in] | id | The element's ID, as an unsigned integer up to 28 bits. | 
| [in] | value | The element's value. | 
| tide::StringElement::StringElement | ( | uint32_t | id, | 
| std::string | value, | ||
| std::string | default_value | ||
| ) | 
Create a new string element with a default value.
| [in] | id | The element's ID, as an unsigned integer up to 28 bits. | 
| [in] | value | The element's value. | 
| [in] | default_value | The default value of the element. | 
| virtual std::streamsize tide::StringElement::body_size | ( | ) | const  [protected, virtual] | 
Get the size of the body of this element.
Implements tide::Element.
| virtual StringElement& tide::StringElement::operator= | ( | std::string const & | rhs | ) |  [virtual] | 
Value assignment operator.
Reimplemented from tide::PrimitiveElement< std::string >.
| virtual uint64_t tide::StringElement::padding | ( | ) | const  [inline, virtual] | 
Get the amount of padding used.
Definition at line 71 of file string_element.h.
| virtual void tide::StringElement::padding | ( | uint64_t | padding | ) |  [inline, virtual] | 
Set the amount of padding to use.
Strings can be zero-padded at the end. This is particularly useful when overwriting an existing string with one that is shorter, so that the file does not need to be rewritten or a void element used.
Management of this value is the responsibility of the user of the StringElement. It will never be adjusted automatically.
Definition at line 82 of file string_element.h.
| virtual std::streamsize tide::StringElement::read_body | ( | std::istream & | input, | 
| std::streamsize | size | ||
| ) |  [protected, virtual] | 
Element body loading.
Implements tide::Element.
| virtual std::streamsize tide::StringElement::write_body | ( | std::ostream & | output | ) |  [virtual] | 
Element body writing.
Implements tide::Element.
| uint64_t tide::StringElement::padding_  [protected] | 
Definition at line 88 of file string_element.h.
 1.7.3
 1.7.3