#include "ZoneDefinitionParser.h" #include "Sequence/SequenceZoneDefinitionAssetList.h" #include "Sequence/SequenceZoneDefinitionBuild.h" #include "Sequence/SequenceZoneDefinitionEntry.h" #include "Sequence/SequenceZoneDefinitionIgnore.h" #include "Sequence/SequenceZoneDefinitionInclude.h" #include "Sequence/SequenceZoneDefinitionMetaData.h" ZoneDefinitionParser::ZoneDefinitionParser(ZoneDefinitionLexer* lexer, const std::optional maybeGame) : AbstractParser(lexer, std::make_unique()) { if (maybeGame) m_state->SetGame(*maybeGame); } const std::vector::sequence_t*>& ZoneDefinitionParser::GetTestsForState() { static std::vector tests({ new SequenceZoneDefinitionMetaData(), new SequenceZoneDefinitionInclude(), new SequenceZoneDefinitionIgnore(), new SequenceZoneDefinitionAssetList(), new SequenceZoneDefinitionBuild(), new SequenceZoneDefinitionEntry(), }); return tests; } std::unique_ptr ZoneDefinitionParser::GetParsedValue() { return std::move(m_state->m_definition); }