Fix build errors w/ gcc
This commit is contained in:
parent
416cbb9def
commit
d9fb863bea
5 changed files with 5 additions and 6 deletions
|
|
@ -16,8 +16,6 @@ using std::get;
|
|||
using std::pair;
|
||||
using std::tuple;
|
||||
using std::make_tuple;
|
||||
using std::shared_ptr;
|
||||
using std::make_shared;
|
||||
using rules::Symbol;
|
||||
using rules::NONE;
|
||||
|
||||
|
|
|
|||
|
|
@ -115,7 +115,6 @@ Rule::~Rule() noexcept {
|
|||
bool Rule::operator==(const Rule &other) const {
|
||||
if (type != other.type) return false;
|
||||
switch (type) {
|
||||
case Rule::BlankType: return blank == other.blank;
|
||||
case Rule::CharacterSetType: return character_set == other.character_set;
|
||||
case Rule::StringType: return string == other.string;
|
||||
case Rule::PatternType: return pattern == other.pattern;
|
||||
|
|
@ -125,6 +124,7 @@ bool Rule::operator==(const Rule &other) const {
|
|||
case Rule::MetadataType: return metadata == other.metadata;
|
||||
case Rule::RepeatType: return repeat == other.repeat;
|
||||
case Rule::SeqType: return seq == other.seq;
|
||||
default: return blank == other.blank;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -219,7 +219,6 @@ size_t hash<Metadata>::operator()(const Metadata &metadata) const {
|
|||
size_t hash<Rule>::operator()(const Rule &rule) const {
|
||||
size_t result = hash<int>()(rule.type);
|
||||
switch (rule.type) {
|
||||
case Rule::BlankType: return result ^ hash<Blank>()(rule.blank);
|
||||
case Rule::CharacterSetType: return result ^ hash<CharacterSet>()(rule.character_set);
|
||||
case Rule::StringType: return result ^ hash<String>()(rule.string);
|
||||
case Rule::PatternType: return result ^ hash<Pattern>()(rule.pattern);
|
||||
|
|
@ -229,6 +228,7 @@ size_t hash<Rule>::operator()(const Rule &rule) const {
|
|||
case Rule::MetadataType: return result ^ hash<Metadata>()(rule.metadata);
|
||||
case Rule::RepeatType: return result ^ hash<Repeat>()(rule.repeat);
|
||||
case Rule::SeqType: return result ^ hash<Seq>()(rule.seq);
|
||||
default: return result ^ hash<Blank>()(rule.blank);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -74,7 +74,6 @@ struct Rule {
|
|||
template <typename FunctionType>
|
||||
inline auto accept(FunctionType function) const -> decltype(function(blank)) {
|
||||
switch (type) {
|
||||
case BlankType: return function(blank);
|
||||
case CharacterSetType: return function(character_set);
|
||||
case StringType: return function(string);
|
||||
case PatternType: return function(pattern);
|
||||
|
|
@ -84,6 +83,7 @@ struct Rule {
|
|||
case MetadataType: return function(metadata);
|
||||
case RepeatType: return function(repeat);
|
||||
case SeqType: return function(seq);
|
||||
default: return function(blank);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ static set<uint32_t> add_chars(set<uint32_t> *left, const set<uint32_t> &right)
|
|||
static vector<CharacterRange> consolidate_ranges(const set<uint32_t> &chars) {
|
||||
vector<CharacterRange> result;
|
||||
for (uint32_t c : chars) {
|
||||
size_t size = result.size();
|
||||
auto size = result.size();
|
||||
if (size >= 2 && result[size - 2].max == (c - 2)) {
|
||||
result.pop_back();
|
||||
result.back().max = c;
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
#include <vector>
|
||||
#include <set>
|
||||
#include <cstdint>
|
||||
|
||||
namespace tree_sitter {
|
||||
namespace rules {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue