#include <map>
#include <string>
#include <vector>
+#include "extension.h"
namespace Msp {
namespace GL {
struct StructDeclaration;
struct VariableDeclaration;
+struct FunctionDeclaration;
struct Block: Node
{
struct FunctionCall: Expression
{
std::string name;
+ FunctionDeclaration *declaration;
bool constructor;
std::vector<NodePtr<Expression> > arguments;
ProgramSyntax::Block content;
std::map<std::string, VariableDeclaration *> in_variables;
std::map<std::string, VariableDeclaration *> out_variables;
+ Version required_version;
Stage(StageType);
};