31 Parser(QIODevice& device, QObject* parent = nullptr); |
31 Parser(QIODevice& device, QObject* parent = nullptr); |
32 LDHeader parseHeader(Winding& winding); |
32 LDHeader parseHeader(Winding& winding); |
33 void parseBody(Model::EditContext& editor); |
33 void parseBody(Model::EditContext& editor); |
34 static modelobjects::BaseObject* parseFromString(Model::EditContext& editor, |
34 static modelobjects::BaseObject* parseFromString(Model::EditContext& editor, |
35 const QString& line); |
35 const QString& line); |
36 static const QMap<QString, decltype(LDHeader::type)> typeStrings; |
|
37 private: |
36 private: |
38 enum HeaderParseResult {ParseSuccess, ParseFailure, StopParsing}; |
37 enum HeaderParseResult {ParseSuccess, ParseFailure, StopParsing}; |
39 QString readLine(); |
38 QString readLine(); |
40 HeaderParseResult parseHeaderLine(LDHeader& header, Winding& winding, const QString& line); |
39 HeaderParseResult parseHeaderLine(LDHeader& header, Winding& winding, const QString& line); |
41 QIODevice& device; |
40 QIODevice& device; |