OpenTTD Source
20241108-master-g80f628063a
|
Public Member Functions | |
StringParameters (StringParameters &parent, size_t size) | |
Create a new StringParameters instance that can reference part of the data of the given parent instance. | |
void | PrepareForNextRun () |
Prepare the string parameters for the next formatting run. More... | |
void | SetTypeOfNextParameter (char32_t type) |
size_t | GetOffset () |
Get the current offset, so it can be backed up for certain processing steps, or be used to offset the argument index within sub strings. More... | |
void | SetOffset (size_t offset) |
Set the offset within the string from where to return the next result of GetInt64 or GetInt32 . More... | |
void | AdvanceOffset (size_t advance) |
Advance the offset within the string from where to return the next result of GetInt64 or GetInt32 . More... | |
template<typename T > | |
T | GetNextParameter () |
Get the next parameter from our parameters. More... | |
const char * | GetNextParameterString () |
Get the next string parameter from our parameters. More... | |
StringParameters | GetRemainingParameters () |
Get a new instance of StringParameters that is a "range" into the remaining existing parameters. More... | |
StringParameters | GetRemainingParameters (size_t offset) |
Get a new instance of StringParameters that is a "range" into the remaining existing parameters from the given offset. More... | |
size_t | GetDataLeft () const |
Return the amount of elements which can still be read. | |
char32_t | GetTypeAtOffset (size_t offset) const |
Get the type of a specific element. | |
void | SetParam (size_t n, const StringParameterData &v) |
void | SetParam (size_t n, uint64_t v) |
template<typename T , std::enable_if_t< std::is_base_of< StrongTypedefBase, T >::value, int > = 0> | |
void | SetParam (size_t n, T v) |
void | SetParam (size_t n, const char *str) |
void | SetParam (size_t n, const std::string &str) |
void | SetParam (size_t n, std::string &&str) |
const StringParameterData & | GetParam (size_t n) const |
Protected Member Functions | |
StringParameters (std::span< StringParameter > parameters={}) | |
const StringParameter & | GetNextParameterReference () |
Get the next parameter from our parameters. More... | |
Protected Attributes | |
StringParameters * | parent = nullptr |
If not nullptr, this instance references data from this parent instance. | |
std::span< StringParameter > | parameters = {} |
Array with the actual parameters. | |
size_t | offset = 0 |
Current offset in the parameters span. | |
char32_t | next_type = 0 |
The type of the next data that is retrieved. | |
Definition at line 22 of file strings_internal.h.
|
inline |
Advance the offset within the string from where to return the next result of GetInt64
or GetInt32
.
advance | The amount to advance the offset by. |
Definition at line 79 of file strings_internal.h.
References parameters.
|
inline |
Get the next parameter from our parameters.
This updates the offset, so the next time this is called the next parameter will be read.
Definition at line 92 of file strings_internal.h.
|
protected |
Get the next parameter from our parameters.
This updates the offset, so the next time this is called the next parameter will be read.
Definition at line 81 of file strings.cpp.
References next_type.
Referenced by GetNextParameterString().
|
inline |
Get the next string parameter from our parameters.
This updates the offset, so the next time this is called the next parameter will be read.
Definition at line 106 of file strings_internal.h.
References GetNextParameterReference().
|
inline |
Get the current offset, so it can be backed up for certain processing steps, or be used to offset the argument index within sub strings.
Definition at line 54 of file strings_internal.h.
References offset.
Referenced by FormatString().
|
inline |
Get a new instance of StringParameters that is a "range" into the remaining existing parameters.
Upon destruction the offset in the parent is not updated. However, calls to SetDParam do update the parameters.
The returned StringParameters must not outlive this StringParameters.
Definition at line 122 of file strings_internal.h.
References GetRemainingParameters().
Referenced by GetRemainingParameters().
|
inline |
Get a new instance of StringParameters that is a "range" into the remaining existing parameters from the given offset.
Upon destruction the offset in the parent is not updated. However, calls to SetDParam do update the parameters.
The returned StringParameters must not outlive this StringParameters.
offset | The offset to get the remaining parameters for. |
Definition at line 134 of file strings_internal.h.
References offset.
void StringParameters::PrepareForNextRun | ( | ) |
Prepare the string parameters for the next formatting run.
This means resetting the type information and resetting the offset to the begin.
Definition at line 68 of file strings.cpp.
References offset, and parameters.
|
inline |
Set the offset within the string from where to return the next result of GetInt64
or GetInt32
.
offset | The offset. |
Definition at line 61 of file strings_internal.h.
References offset, and parameters.
Referenced by FormatString().