2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2025-06-26 06:11:53 +00:00
Files
OpenAssetTools/src/ZoneCodeGeneratorLib/Parsing/Commands/Sequence/SequenceBlock.h
2023-11-19 21:07:21 +00:00

26 lines
744 B
C++

#pragma once
#include "Parsing/Commands/Impl/CommandsParser.h"
#include "Utils/ClassUtils.h"
#include <unordered_map>
class SequenceBlock final : public CommandsParser::sequence_t
{
static constexpr auto TAG_DEFAULT = 1;
static constexpr auto CAPTURE_BLOCK_ENUM_ENTRY = 1;
static constexpr auto CAPTURE_BLOCK_TYPE = 2;
std::unordered_map<std::string, FastFileBlockType> m_type_lookup;
void AddFastFileBlockToLookup(std::string name, FastFileBlockType type);
_NODISCARD bool GetFastFileBlockNameByType(const std::string& name, FastFileBlockType& type) const;
protected:
void ProcessMatch(CommandsParserState* state, SequenceResult<CommandsParserValue>& result) const override;
public:
SequenceBlock();
};