Class ManifestLoader<T>
Generic manifest loader implementing Pattern 2: Manifest/Reference Loads index files that point to actual data files Examples: country_tags → country files, bookmarks → bookmark definitions Following paradox-data-patterns-guide.md specifications
public class ManifestLoader<T> where T : class
Type Parameters
T
- Inheritance
-
objectManifestLoader<T>
- Derived
Fields
errors
protected List<string> errors
Field Value
- List<string>
manifest
protected Dictionary<string, string> manifest
Field Value
- Dictionary<string, string>
Methods
GetErrors()
Get all loading errors
public IReadOnlyList<string> GetErrors()
Returns
- IReadOnlyList<string>
GetManifest()
Get all manifest entries
public IReadOnlyDictionary<string, string> GetManifest()
Returns
- IReadOnlyDictionary<string, string>
HasErrors()
Check if manifest loaded successfully
public bool HasErrors()
Returns
- bool
IsComment(string)
Check if key is a comment line
protected virtual bool IsComment(string key)
Parameters
keystring
Returns
- bool
IsDirective(string)
Check if key is a directive (e.g., @include)
protected virtual bool IsDirective(string key)
Parameters
keystring
Returns
- bool
LoadManifest(string)
Load manifest file and return tag → file path mapping Phase 1 of manifest pattern: discovery
public virtual ManifestLoadResult LoadManifest(string manifestFilePath)
Parameters
manifestFilePathstring
Returns
ParseManifestLines(string[])
Parse manifest lines into key-value pairs Handles standard Paradox manifest format: KEY = "path/to/file.txt"
protected virtual void ParseManifestLines(string[] lines)
Parameters
linesstring[]