2014-03-09 22:05:17 -07:00
|
|
|
#ifndef COMPILER_RULES_PATTERN_H_
|
|
|
|
|
#define COMPILER_RULES_PATTERN_H_
|
2013-11-10 14:24:25 -08:00
|
|
|
|
2014-03-09 22:45:33 -07:00
|
|
|
#include <string>
|
2015-09-03 17:49:20 -07:00
|
|
|
#include "compiler/rule.h"
|
2013-11-10 14:24:25 -08:00
|
|
|
|
|
|
|
|
namespace tree_sitter {
|
2014-07-20 21:43:27 -07:00
|
|
|
namespace rules {
|
2013-12-30 23:52:38 -08:00
|
|
|
|
2014-07-20 21:43:27 -07:00
|
|
|
class Pattern : public Rule {
|
|
|
|
|
public:
|
|
|
|
|
explicit Pattern(const std::string &string);
|
2014-03-09 19:49:35 -07:00
|
|
|
|
2014-07-20 21:43:27 -07:00
|
|
|
bool operator==(const Rule &other) const;
|
|
|
|
|
size_t hash_code() const;
|
|
|
|
|
rule_ptr copy() const;
|
|
|
|
|
std::string to_string() const;
|
|
|
|
|
void accept(Visitor *visitor) const;
|
2013-11-10 14:24:25 -08:00
|
|
|
|
2014-07-20 21:43:27 -07:00
|
|
|
const std::string value;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
} // namespace rules
|
|
|
|
|
} // namespace tree_sitter
|
2013-11-10 14:24:25 -08:00
|
|
|
|
2014-07-20 21:43:27 -07:00
|
|
|
#endif // COMPILER_RULES_PATTERN_H_
|