OpenTTD Source: StringReader Struct Reference

OpenTTD Source 14.0-beta1

Public Member Functions | Data Fields
StringReader Struct Referenceabstract

Helper for reading strings. More...

`#include <strgen.h>`

Inheritance diagram for StringReader:

## Public Member Functions
| StringReader (StringData &data, const std::string &file, bool master, bool translation)
| Prepare reading. More...
void | HandleString (char *str)
virtual std::optional< std::string > | ReadLine ()=0
| Read a single line from the source of strings. More...
virtual void | HandlePragma (char *str)
| Handle the pragma of the file. More...
virtual void | ParseFile ()
| Start parsing the file.

## Data Fields
StringData & | data
| The data to fill during reading.
const std::string | file
| The file we are reading.
bool | master
| Are we reading the master file?
bool | translation
| Are we reading a translation, implies !master. However, the base translation will have this false.

## Detailed Description

Helper for reading strings.

Definition at line 58 of file strgen.h.

## Constructor & Destructor Documentation

## ◆ StringReader()

StringReader::StringReader | ( | StringData & | data,
|  | const std::string & | file,
|  | bool | master,
|  | bool | translation
| ) |  |

Prepare reading.

Parameters

  data | The data to fill during reading.
  file | The file we are reading.
  master | Are we reading the master file?
  translation | Are we reading a translation?

Definition at line 528 of file strgen_base.cpp.

## Member Function Documentation

## ◆ HandlePragma()

void StringReader::HandlePragma | ( | char * | str | ) |
| virtual

Handle the pragma of the file.

Parameters

  str | The pragma string to parse.

Reimplemented in FileStringReader.

Definition at line 729 of file strgen_base.cpp.

References _lang, _plural_forms, lengthof, and LanguagePackHeader::plural_form.

## ◆ ReadLine()

virtual std::optional<std::string> StringReader::ReadLine | ( |  | ) |
| pure virtual

Read a single line from the source of strings.

Returns
  The line, or std::nullopt if at the end of the file.

Implemented in StringListReader, and FileStringReader.

The documentation for this struct was generated from the following files:

- src/strgen/strgen.h
- src/strgen/strgen_base.cpp