Files
SabreTools/SabreTools.Models
Matt Nadareski b37aed389e Add nullable context to SabreTools.DatItems
This change also starts migrating the internals of the DatItem formats to the new internal models. Right now, it's basically just acting like a wrapper around those models.
2023-08-14 13:17:51 -04:00
..
2023-08-11 10:27:26 -04:00

SabreTools.Models

This library comprises of models that represent either directly serializable or representative structures for all DAT types. All of the main models representing metadata files should have parsers created outside of the current code. The parser code will likely be partially patterned off of the code being used to create the serialization tests.

In each completed model, there is a section that looks like the following:

        #region DO NOT USE IN PRODUCTION

        /// <remarks>Should be empty</remarks>
        [XmlAnyAttribute]
        public XmlAttribute[]? ADDITIONAL_ATTRIBUTES { get; set; }

        /// <remarks>Should be empty</remarks>
        [XmlAnyElement]
        public object[]? ADDITIONAL_ELEMENTS { get; set; }

        #endregion

This code should be removed before the models are used. This is only included during debugging and implementation as to ensure that there are no notable holes in the models that would disallow 1:1 replication of inputs.

Missing Formats

The following formats do not have models included in this library yet and, as such, do not have serializers:

  • Missfile
  • SabreJSON
  • SabreDAT XML