36 lines
490 B
C++
36 lines
490 B
C++
#include <LXC.h>
|
|
|
|
namespace LXC::AST
|
|
{
|
|
enum class NodeType
|
|
{
|
|
// General nodes //
|
|
|
|
Identifier,
|
|
Operation,
|
|
|
|
// Variable nodes //
|
|
|
|
Var_Declare,
|
|
Var_Assign,
|
|
Var_Access,
|
|
|
|
// Control flow nodes //
|
|
|
|
IfBranch,
|
|
ReturnVal
|
|
|
|
};
|
|
|
|
class Node
|
|
{
|
|
public:
|
|
Node(NodeType _type)
|
|
: m_Type(_type)
|
|
{}
|
|
|
|
protected:
|
|
const NodeType m_Type;
|
|
};
|
|
}
|