|
wowlib 0.0.0
Read & write World of Warcraft client files — a C++26 core
|
#include <wowlib/formats/common/validation.hpp>
Public Member Functions | |
| void | add (ValidationSeverity severity, std::string path, std::string message) |
| Record a finding, unless the report is already full(). | |
| bool | full () const |
| bool | truncated () const |
| Whether findings were dropped because the report hit its size cap. | |
| void | addError (std::string path, std::string message) |
| Record an error finding (see add()). | |
| void | addWarning (std::string path, std::string message) |
| Record a warning finding (see add()). | |
| bool | ok () const |
| Whether the entity is fit to write: no error-severity findings (warnings do not fail a report). | |
| std::size_t | errorCount () const |
| The number of error-severity findings. | |
Static Public Attributes | |
| static constexpr std::size_t | MaxFindings = 1000 |
| The most findings one report holds. | |
Definition at line 57 of file validation.hpp.
|
inline |
Record a finding, unless the report is already full().
| severity | the finding's severity. |
| path | member path from the validated entity ("" for entity-level findings; nesting walkers prefix it). |
| message | what is wrong, with the numbers involved. |
Definition at line 70 of file validation.hpp.
References full().
Referenced by addError(), addWarning(), and wowlib::formats::wmo::group::detail::WMOGroupBody< canonicalVersion(V, WmoGroupPivots, WmoVersions)>::validateExtra().
|
inline |
Record an error finding (see add()).
| path | member path from the validated entity. |
| message | what is wrong, with the numbers involved. |
Definition at line 90 of file validation.hpp.
References add(), and wowlib::formats::Error.
Referenced by wowlib::db::TableCore::validate(), wowlib::formats::adt::detail::ADT< V >::validate(), wowlib::formats::blp::BLP::validate(), wowlib::formats::wmo::detail::WMO< V >::validate(), wowlib::formats::detail::validateCountMatches(), wowlib::formats::adt::detail::MapChunk< canonicalVersion(V, MapChunkPivots, AdtVersions)>::validateExtra(), wowlib::formats::m2::skin::detail::M2SkinProfile< canonicalVersion(V, M2SkinProfilePivots, M2Versions)>::validateExtra(), wowlib::formats::wdl::detail::WDL< V >::validateExtra(), wowlib::formats::wdt::root::detail::WDTRoot< canonicalVersion(V, WdtRootPivots, WdtVersions)>::validateExtra(), wowlib::formats::wmo::group::detail::WMOGroupBody< canonicalVersion(V, WmoGroupPivots, WmoVersions)>::validateExtra(), wowlib::formats::wmo::root::detail::WMORoot< canonicalVersion(V, WmoRootPivots, WmoVersions)>::validateExtra(), wowlib::formats::detail::validateIndexElements(), wowlib::formats::detail::validateMembers(), wowlib::formats::detail::validateOptionalIndexElements(), and wowlib::formats::m2::detail::validateProfileAgainstRoot().
|
inline |
Record a warning finding (see add()).
| path | member path from the validated entity. |
| message | what is wrong, with the numbers involved. |
Definition at line 97 of file validation.hpp.
References add(), and wowlib::formats::Warning.
Referenced by wowlib::formats::blp::BLP::validate(), wowlib::formats::wmo::detail::WMO< V >::validate(), wowlib::formats::adt::detail::MapChunk< canonicalVersion(V, MapChunkPivots, AdtVersions)>::validateExtra(), and wowlib::formats::wmo::group::detail::WMOGroupBody< canonicalVersion(V, WmoGroupPivots, WmoVersions)>::validateExtra().
|
inlinenodiscard |
The number of error-severity findings.
Definition at line 111 of file validation.hpp.
References wowlib::formats::Error, and wowlib::formats::ValidationIssue::severity.
|
inlinenodiscard |
Definition at line 81 of file validation.hpp.
References MaxFindings.
Referenced by add(), wowlib::db::TableCore::validate(), wowlib::formats::adt::detail::ADT< V >::validate(), wowlib::formats::blp::BLP::validate(), wowlib::formats::m2::detail::M2< V >::validate(), wowlib::formats::detail::validateMembers(), wowlib::formats::m2::detail::validateProfileAgainstRoot(), and wowlib::formats::detail::validateValue().
|
inlinenodiscard |
Whether the entity is fit to write: no error-severity findings (warnings do not fail a report).
Definition at line 103 of file validation.hpp.
References wowlib::formats::Error, and wowlib::formats::ValidationIssue::severity.
|
inlinenodiscard |
Whether findings were dropped because the report hit its size cap.
Definition at line 85 of file validation.hpp.
|
staticconstexpr |
The most findings one report holds.
A walk over a corrupt file can violate a contract per element of a million-element array; past this many the report stops growing and records that it was truncated, so validating never becomes the memory problem.
Definition at line 63 of file validation.hpp.
Referenced by full().