2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2025-09-03 23:37:26 +00:00

Implement sequence matcher and parser magic

This commit is contained in:
Jan
2021-02-13 00:12:26 +01:00
parent fe1f391bcc
commit 0f70f9586c
48 changed files with 1061 additions and 141 deletions

View File

@@ -0,0 +1,18 @@
#include "SequenceNamespace.h"
#include "Parsing/Header/Matcher/HeaderMatcherFactory.h"
SequenceNamespace::SequenceNamespace()
{
const HeaderMatcherFactory create(this);
AddMatchers({
create.Type(HeaderParserValueType::NAMESPACE),
create.Type(HeaderParserValueType::IDENTIFIER).Capture(CAPTURE_NAME),
create.Char('{')
});
}
void SequenceNamespace::ProcessMatch(HeaderParserState* state, const SequenceResult<HeaderParserValue>& result) const
{
}

View File

@@ -0,0 +1,16 @@
#pragma once
#include "Parsing/Sequence/AbstractSequence.h"
#include "Parsing/Header/Impl/HeaderParserState.h"
#include "Parsing/Header/Impl/HeaderParserValue.h"
class SequenceNamespace final : public AbstractSequence<HeaderParserValue, HeaderParserState>
{
static constexpr int CAPTURE_NAME = 0;
protected:
void ProcessMatch(HeaderParserState* state, const SequenceResult<HeaderParserValue>& result) const override;
public:
SequenceNamespace();
};