28 lines
501 B
C++
28 lines
501 B
C++
#pragma once
|
|
|
|
#include <LXC.h>
|
|
|
|
#include <NodeTypes.h>
|
|
#include <Lexer.h>
|
|
|
|
namespace LXC::Parser
|
|
{
|
|
struct ParserError {};
|
|
|
|
struct FunctionAST
|
|
{
|
|
FunctionAST() :
|
|
name{}, contents{}
|
|
{}
|
|
|
|
FunctionAST(FunctionAST&& other) noexcept :
|
|
name{}, contents{}
|
|
{}
|
|
|
|
std::string name;
|
|
AST::SyntaxBranch contents;
|
|
};
|
|
|
|
Util::ReturnVal<std::vector<FunctionAST>, ParserError> TurnTokensIntoAST(const Lexer::LexerOutput& input);
|
|
}
|