mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-09-07 17:27:26 +00:00
Base for technique loading
This commit is contained in:
17
src/ObjLoading/Techset/Parsing/TechniqueFileParser.cpp
Normal file
17
src/ObjLoading/Techset/Parsing/TechniqueFileParser.cpp
Normal file
@@ -0,0 +1,17 @@
|
||||
#include "TechniqueFileParser.h"
|
||||
|
||||
using namespace techset;
|
||||
|
||||
TechniqueParser::TechniqueParser(SimpleLexer* lexer, ITechniqueDefinitionAcceptor* acceptor)
|
||||
: AbstractParser(lexer, std::make_unique<TechniqueParserState>(acceptor))
|
||||
{
|
||||
}
|
||||
|
||||
const std::vector<AbstractParser<SimpleParserValue, TechniqueParserState>::sequence_t*>& TechniqueParser::GetTestsForState()
|
||||
{
|
||||
// TODO: Tests
|
||||
static std::vector<sequence_t*> tests({
|
||||
});
|
||||
|
||||
return tests;
|
||||
}
|
18
src/ObjLoading/Techset/Parsing/TechniqueFileParser.h
Normal file
18
src/ObjLoading/Techset/Parsing/TechniqueFileParser.h
Normal file
@@ -0,0 +1,18 @@
|
||||
#pragma once
|
||||
|
||||
#include "TechniqueFileParserState.h"
|
||||
#include "Parsing/Simple/SimpleLexer.h"
|
||||
#include "Parsing/Simple/SimpleParserValue.h"
|
||||
#include "Parsing/Impl/AbstractParser.h"
|
||||
|
||||
namespace techset
|
||||
{
|
||||
class TechniqueParser final : public AbstractParser<SimpleParserValue, TechniqueParserState>
|
||||
{
|
||||
protected:
|
||||
const std::vector<sequence_t*>& GetTestsForState() override;
|
||||
|
||||
public:
|
||||
TechniqueParser(SimpleLexer* lexer, ITechniqueDefinitionAcceptor* acceptor);
|
||||
};
|
||||
}
|
11
src/ObjLoading/Techset/Parsing/TechniqueFileParserState.cpp
Normal file
11
src/ObjLoading/Techset/Parsing/TechniqueFileParserState.cpp
Normal file
@@ -0,0 +1,11 @@
|
||||
#include "TechniqueFileParserState.h"
|
||||
|
||||
#include <cassert>
|
||||
|
||||
using namespace techset;
|
||||
|
||||
TechniqueParserState::TechniqueParserState(ITechniqueDefinitionAcceptor* acceptor)
|
||||
: m_acceptor(acceptor)
|
||||
{
|
||||
assert(acceptor);
|
||||
}
|
14
src/ObjLoading/Techset/Parsing/TechniqueFileParserState.h
Normal file
14
src/ObjLoading/Techset/Parsing/TechniqueFileParserState.h
Normal file
@@ -0,0 +1,14 @@
|
||||
#pragma once
|
||||
|
||||
#include "Techset/TechniqueDefinitionAcceptor.h"
|
||||
|
||||
namespace techset
|
||||
{
|
||||
class TechniqueParserState
|
||||
{
|
||||
public:
|
||||
ITechniqueDefinitionAcceptor* const m_acceptor;
|
||||
|
||||
explicit TechniqueParserState(ITechniqueDefinitionAcceptor* acceptor);
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user