tree-sitter/src/grammar.h
2013-11-12 18:45:04 -08:00

19 lines
541 B
C++

#ifndef __TreeSitter__grammar__
#define __TreeSitter__grammar__
#include <unordered_map>
#include "rules.h"
namespace tree_sitter {
class Grammar {
typedef std::unordered_map<std::string, rules::rule_ptr> rule_map;
public:
Grammar(const rule_map &rules, const std::string &start_rule_name);
Grammar(const std::initializer_list<std::string> &rule_names,
const std::initializer_list<rules::rule_ptr> &rules);
rule_map rules;
const std::string start_rule_name;
};
}
#endif