|
stmm-games-doc
0.32.0
|

Classes | |
| struct | Checker |
Public Member Functions | |
| ParserCtx (const shared_ptr< AppConfig > &refAppConfig, Named &oNamed) | |
| Constructor. More... | |
| ParserCtx (const shared_ptr< AppPreferences > &refAppPreferences, Named &oNamed) | |
| Constructor. More... | |
| virtual | ~ParserCtx () |
| const shared_ptr< AppConfig > & | appConfig () |
| The app config. More... | |
| const shared_ptr< AppPreferences > & | appPreferences () |
| The app preferences. More... | |
| Named & | named () |
| The named assets. More... | |
| void | pushCtx (const std::string &sStr) |
| Push a context. More... | |
| void | popCtx () |
| Pop a context. More... | |
| virtual void | addChecker (const xmlpp::Element *p0Element) |
| Adds a checker for the element. More... | |
| void | addValidChildElementName (const xmlpp::Element *p0Element, const std::string &sChildElementName) |
| Declares a child element name as valid. More... | |
| void | addValidChildElementNames (const xmlpp::Element *p0Element, const std::string &sChildElementName) |
| Declares a child element name as valid. More... | |
| template<typename ... Names> | |
| void | addValidChildElementNames (const xmlpp::Element *p0Element, const std::string &sChildElementName, const Names &... oNames) |
| Declares multiple child element names as valid. More... | |
| void | addValidAttrName (const xmlpp::Element *p0Element, const std::string &sAttrName) |
| Declares an attribute name as valid. More... | |
| void | addValidAttrNames (const xmlpp::Element *p0Element, const std::string &sAttrName) |
| Declares an attribute name as valid. More... | |
| template<typename ... Names> | |
| void | addValidAttrNames (const xmlpp::Element *p0Element, const std::string &sAttrName, const Names &... oNames) |
| Declares attribute names as valid. More... | |
| void | removeChecker (const xmlpp::Element *p0Element, bool bCheck) |
| Removes a checker for the element. More... | |
| virtual void | removeChecker (const xmlpp::Element *p0Element, bool bCheckChildElements, bool bCheckAttrs) |
| Removes a checker for the element. More... | |
| std::runtime_error | error (const std::string &sErr) |
| Creates an exception for the current context. More... | |
| void | dump () const |
Static Public Member Functions | |
| static int32_t | getLine (const xmlpp::Element *p0Element, const std::string &sAttr) |
| The line number within a document of an element or attribute. More... | |
Protected Member Functions | |
| virtual std::string | err (const std::string &s) |
| Builds complete error string from context. More... | |
| std::vector< Checker >::iterator | getChecker (const xmlpp::Element *p0Element) |
Protected Attributes | |
| const shared_ptr< AppConfig > | m_refAppConfig |
| shared_ptr< AppPreferences > | m_refAppPreferences |
| Named & | m_oNamed |
| std::vector< std::string > | m_oStack |
| std::vector< Checker > | m_aCheckers |
Constructor.
Used when parsing theme.
| refAppConfig | The app config. Cannot be null. |
| oNamed | The named. |
|
inline |
Constructor.
Used when parsing game.
| refAppPreferences | The app preferences. Cannot be null. |
| oNamed | The named. |
|
virtual |
|
virtual |
Adds a checker for the element.
A checker is used to make sure all attributes and child elements of an element are expected.
If an element already has a checker a reference count is increased.
The check happens (if requested) in the corresponding removeChecker() function.
| p0Element | The element. Cannot be null. |
Reimplemented in stmg::ConditionalCtx.
| void stmg::ParserCtx::addValidAttrName | ( | const xmlpp::Element * | p0Element, |
| const std::string & | sAttrName | ||
| ) |
Declares an attribute name as valid.
| p0Element | The element. Cannot be null. |
| sAttrName | The attribute name. Cannot be empty. |
|
inline |
Declares an attribute name as valid.
| p0Element | The element. Cannot be null. |
| sAttrName | The attribute name. Cannot be empty. |
|
inline |
Declares attribute names as valid.
| p0Element | The element. Cannot be null. |
| sAttrName | The attribute name. Cannot be empty. |
| oNames | Further attribute names. |
| void stmg::ParserCtx::addValidChildElementName | ( | const xmlpp::Element * | p0Element, |
| const std::string & | sChildElementName | ||
| ) |
Declares a child element name as valid.
| p0Element | The element. Cannot be null. |
| sChildElementName | The child element name. Cannot be empty. |
|
inline |
Declares a child element name as valid.
| p0Element | The element. Cannot be null. |
| sChildElementName | The child element name. Cannot be empty. |
|
inline |
Declares multiple child element names as valid.
| p0Element | The element. Cannot be null. |
| sChildElementName | A child element name. Cannot be empty. |
| oNames | Further child element names. |
|
inline |
The app config.
|
inline |
The app preferences.
Not defined in a theme context.
| void stmg::ParserCtx::dump | ( | ) | const |
|
protectedvirtual |
Builds complete error string from context.
The base implementation concatenates strings passed to pushCtx().
| s | The error without context. |
Reimplemented in stmg::GameInfoCtx, stmg::GameCtx, and stmg::ThemeCtx.
| std::runtime_error stmg::ParserCtx::error | ( | const std::string & | sErr | ) |
Creates an exception for the current context.
| sErr | The error string. Can be empty. |
|
protected |
|
static |
The line number within a document of an element or attribute.
| p0Element | The element. Cannot be null. |
| sAttr | The attribute name. If empty or not found the element's line number is returned. |
|
inline |
The named assets.
|
inline |
|
inline |
Push a context.
This string context can be used to give better error messages. It is used by ParserCtx::error().
| sStr | The string. Cannot be empty. |
|
inline |
Removes a checker for the element.
| p0Element | The element. Cannot be null. |
| bCheck | Whether to check both attributes child element names. |
|
virtual |
Removes a checker for the element.
This should always be paired with a addChecker() call.
If an element has multiple checkers, the check is only performed when the last checker is removed.
The bCheckChildElements parameter should be set to false if you are iterating over all child elements and checking their validity explicitely. Same for bCheckAttrs.
| p0Element | The element. Cannot be null. |
| bCheckChildElements | Whether to check child element names. |
| bCheckAttrs | Whether to check attributes. |
Reimplemented in stmg::ConditionalCtx.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
1.8.13