Refactor QS408M and PDSF File Handlers
- Updated Detail class to include JsonSourceGenerationOptions and JsonSerializable attributes for source generation. - Modified ProcessData class to utilize source generation context for Description deserialization. - Renamed RowSourceGenerationContext to QS408MRowSourceGenerationContext for clarity. - Updated Run class to use QS408MRunSourceGenerationContext for serialization. - Enhanced Description class with source generation attributes. - Refactored FileRead class to use source generation context for Description deserialization. - Added new methods in ProcessDataStandardFormat for JSON element array extraction. - Introduced new PDSF file handler classes: Body, Constant, FileRead, Footer, Header, Row, Run, and Site. - Implemented logic for parsing and handling PDSF data structures. - Added unit tests for PDSF processing to ensure functionality.
This commit is contained in:
36
Adaptation/FileHandlers/pdsf/Footer.cs
Normal file
36
Adaptation/FileHandlers/pdsf/Footer.cs
Normal file
@ -0,0 +1,36 @@
|
||||
namespace Adaptation.FileHandlers.pdsf;
|
||||
|
||||
#nullable enable
|
||||
|
||||
public class Footer
|
||||
{
|
||||
|
||||
public Footer(string line, string radialVariationThickness, string slot)
|
||||
{
|
||||
Line = line;
|
||||
RadialVariationThickness = radialVariationThickness;
|
||||
Slot = slot;
|
||||
}
|
||||
|
||||
public string Line { get; }
|
||||
public string RadialVariationThickness { get; }
|
||||
public string Slot { get; }
|
||||
|
||||
internal static Footer? Get(Constant constant, string text, int[] i)
|
||||
{
|
||||
Footer? result;
|
||||
_ = Run.GetToEOL(text, i);
|
||||
_ = Run.GetToEOL(text, i);
|
||||
string line = Run.GetToEOL(text, i);
|
||||
i[0] = Run.ScanPast(text, i, constant.Thickness);
|
||||
string radialVariationThickness = Run.GetToEOL(text, i);
|
||||
_ = Run.GetToEOL(text, i);
|
||||
i[0] = Run.ScanPast(text, i, constant.Slot);
|
||||
string slot = Run.GetBefore(text, i, constant.Semicolon);
|
||||
result = new(line,
|
||||
radialVariationThickness,
|
||||
slot);
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user