diff --git a/lib/binding_rust/bindings.rs b/lib/binding_rust/bindings.rs index 686fec06..bd4e1501 100644 --- a/lib/binding_rust/bindings.rs +++ b/lib/binding_rust/bindings.rs @@ -107,12 +107,12 @@ pub struct TSQueryCapture { pub node: TSNode, pub index: u32, } -pub const TSQuantifier_Zero: TSQuantifier = 0; -pub const TSQuantifier_ZeroOrOne: TSQuantifier = 1; -pub const TSQuantifier_ZeroOrMore: TSQuantifier = 2; -pub const TSQuantifier_One: TSQuantifier = 3; -pub const TSQuantifier_OneOrMore: TSQuantifier = 4; -pub type TSQuantifier = u32; +pub const TSQuantifier_TSQuantifierZero: TSQuantifier = 0; +pub const TSQuantifier_TSQuantifierZeroOrOne: TSQuantifier = 1; +pub const TSQuantifier_TSQuantifierZeroOrMore: TSQuantifier = 2; +pub const TSQuantifier_TSQuantifierOne: TSQuantifier = 3; +pub const TSQuantifier_TSQuantifierOneOrMore: TSQuantifier = 4; +pub type TSQuantifier = ::std::os::raw::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct TSQueryMatch { diff --git a/lib/binding_rust/lib.rs b/lib/binding_rust/lib.rs index a1199470..e88a411c 100644 --- a/lib/binding_rust/lib.rs +++ b/lib/binding_rust/lib.rs @@ -118,11 +118,11 @@ pub enum CaptureQuantifier { impl From for CaptureQuantifier { fn from(value: ffi::TSQuantifier) -> Self { match value { - ffi::TSQuantifier_Zero => CaptureQuantifier::Zero, - ffi::TSQuantifier_ZeroOrOne => CaptureQuantifier::ZeroOrOne, - ffi::TSQuantifier_ZeroOrMore => CaptureQuantifier::ZeroOrMore, - ffi::TSQuantifier_One => CaptureQuantifier::One, - ffi::TSQuantifier_OneOrMore => CaptureQuantifier::OneOrMore, + ffi::TSQuantifier_TSQuantifierZero => CaptureQuantifier::Zero, + ffi::TSQuantifier_TSQuantifierZeroOrOne => CaptureQuantifier::ZeroOrOne, + ffi::TSQuantifier_TSQuantifierZeroOrMore => CaptureQuantifier::ZeroOrMore, + ffi::TSQuantifier_TSQuantifierOne => CaptureQuantifier::One, + ffi::TSQuantifier_TSQuantifierOneOrMore => CaptureQuantifier::OneOrMore, _ => panic!("Unrecognized quantifier: {}", value), } } diff --git a/lib/include/tree_sitter/api.h b/lib/include/tree_sitter/api.h index 0f68530f..4a150511 100644 --- a/lib/include/tree_sitter/api.h +++ b/lib/include/tree_sitter/api.h @@ -107,11 +107,11 @@ typedef struct { } TSQueryCapture; typedef enum { - Zero = 0, // must match the array initialization value - ZeroOrOne, - ZeroOrMore, - One, - OneOrMore, + TSQuantifierZero = 0, // must match the array initialization value + TSQuantifierZeroOrOne, + TSQuantifierZeroOrMore, + TSQuantifierOne, + TSQuantifierOneOrMore, } TSQuantifier; typedef struct { diff --git a/lib/src/query.c b/lib/src/query.c index 8f56918a..f35ebd23 100644 --- a/lib/src/query.c +++ b/lib/src/query.c @@ -467,55 +467,55 @@ static TSQuantifier quantifier_mul( TSQuantifier left, TSQuantifier right ) { - TSQuantifier result = Zero; // initialized to make compiler happy, but all cases should be covered below! + TSQuantifier result = TSQuantifierZero; // initialized to make compiler happy, but all cases should be covered below! switch (left) { - case Zero: - result = Zero; + case TSQuantifierZero: + result = TSQuantifierZero; break; - case ZeroOrOne: + case TSQuantifierZeroOrOne: switch (right) { - case Zero: - result = Zero; + case TSQuantifierZero: + result = TSQuantifierZero; break; - case ZeroOrOne: - case One: - result = ZeroOrOne; + case TSQuantifierZeroOrOne: + case TSQuantifierOne: + result = TSQuantifierZeroOrOne; break; - case ZeroOrMore: - case OneOrMore: - result = ZeroOrMore; + case TSQuantifierZeroOrMore: + case TSQuantifierOneOrMore: + result = TSQuantifierZeroOrMore; break; }; break; - case ZeroOrMore: + case TSQuantifierZeroOrMore: switch (right) { - case Zero: - result = Zero; + case TSQuantifierZero: + result = TSQuantifierZero; break; - case ZeroOrOne: - case ZeroOrMore: - case One: - case OneOrMore: - result = ZeroOrMore; + case TSQuantifierZeroOrOne: + case TSQuantifierZeroOrMore: + case TSQuantifierOne: + case TSQuantifierOneOrMore: + result = TSQuantifierZeroOrMore; break; }; break; - case One: + case TSQuantifierOne: result = right; break; - case OneOrMore: + case TSQuantifierOneOrMore: switch (right) { - case Zero: - result = Zero; + case TSQuantifierZero: + result = TSQuantifierZero; break; - case ZeroOrOne: - case ZeroOrMore: - result = ZeroOrMore; + case TSQuantifierZeroOrOne: + case TSQuantifierZeroOrMore: + result = TSQuantifierZeroOrMore; break; - case One: - case OneOrMore: - result = OneOrMore; + case TSQuantifierOne: + case TSQuantifierOneOrMore: + result = TSQuantifierOneOrMore; break; }; break; @@ -527,67 +527,67 @@ static TSQuantifier quantifier_join( TSQuantifier left, TSQuantifier right ) { - TSQuantifier result = Zero; // initialized to make compiler happy, but all cases should be covered below! + TSQuantifier result = TSQuantifierZero; // initialized to make compiler happy, but all cases should be covered below! switch (left) { - case Zero: + case TSQuantifierZero: switch (right) { - case Zero: - result = Zero; + case TSQuantifierZero: + result = TSQuantifierZero; break; - case ZeroOrOne: - case One: - result = ZeroOrOne; + case TSQuantifierZeroOrOne: + case TSQuantifierOne: + result = TSQuantifierZeroOrOne; break; - case ZeroOrMore: - case OneOrMore: - result = ZeroOrMore; + case TSQuantifierZeroOrMore: + case TSQuantifierOneOrMore: + result = TSQuantifierZeroOrMore; break; }; break; - case ZeroOrOne: + case TSQuantifierZeroOrOne: switch (right) { - case Zero: - case ZeroOrOne: - case One: - result = ZeroOrOne; + case TSQuantifierZero: + case TSQuantifierZeroOrOne: + case TSQuantifierOne: + result = TSQuantifierZeroOrOne; break; - case ZeroOrMore: - case OneOrMore: - result = ZeroOrMore; + case TSQuantifierZeroOrMore: + case TSQuantifierOneOrMore: + result = TSQuantifierZeroOrMore; break; }; break; - case ZeroOrMore: - result = ZeroOrMore; + case TSQuantifierZeroOrMore: + result = TSQuantifierZeroOrMore; break; - case One: + case TSQuantifierOne: switch (right) { - case Zero: - case ZeroOrOne: - result = ZeroOrOne; + case TSQuantifierZero: + case TSQuantifierZeroOrOne: + result = TSQuantifierZeroOrOne; break; - case ZeroOrMore: - result = ZeroOrMore; + case TSQuantifierZeroOrMore: + result = TSQuantifierZeroOrMore; break; - case One: - result = One; + case TSQuantifierOne: + result = TSQuantifierOne; break; - case OneOrMore: - result = OneOrMore; + case TSQuantifierOneOrMore: + result = TSQuantifierOneOrMore; break; }; break; - case OneOrMore: + case TSQuantifierOneOrMore: switch (right) { - case Zero: - case ZeroOrOne: - case ZeroOrMore: - result = ZeroOrMore; + case TSQuantifierZero: + case TSQuantifierZeroOrOne: + case TSQuantifierZeroOrMore: + result = TSQuantifierZeroOrMore; break; - case One: - case OneOrMore: - result = OneOrMore; + case TSQuantifierOne: + case TSQuantifierOneOrMore: + result = TSQuantifierOneOrMore; break; }; break; @@ -599,57 +599,57 @@ static TSQuantifier quantifier_add( TSQuantifier left, TSQuantifier right ) { - TSQuantifier result = Zero; // initialized to make compiler happy, but all cases should be covered below! + TSQuantifier result = TSQuantifierZero; // initialized to make compiler happy, but all cases should be covered below! switch (left) { - case Zero: + case TSQuantifierZero: result = right; break; - case ZeroOrOne: + case TSQuantifierZeroOrOne: switch (right) { - case Zero: - result = ZeroOrOne; + case TSQuantifierZero: + result = TSQuantifierZeroOrOne; break; - case ZeroOrOne: - case ZeroOrMore: - result = ZeroOrMore; + case TSQuantifierZeroOrOne: + case TSQuantifierZeroOrMore: + result = TSQuantifierZeroOrMore; break; - case One: - case OneOrMore: - result = OneOrMore; + case TSQuantifierOne: + case TSQuantifierOneOrMore: + result = TSQuantifierOneOrMore; break; }; break; - case ZeroOrMore: + case TSQuantifierZeroOrMore: switch (right) { - case Zero: - result = ZeroOrMore; + case TSQuantifierZero: + result = TSQuantifierZeroOrMore; break; - case ZeroOrOne: - case ZeroOrMore: - result = ZeroOrMore; + case TSQuantifierZeroOrOne: + case TSQuantifierZeroOrMore: + result = TSQuantifierZeroOrMore; break; - case One: - case OneOrMore: - result = OneOrMore; + case TSQuantifierOne: + case TSQuantifierOneOrMore: + result = TSQuantifierOneOrMore; break; }; break; - case One: + case TSQuantifierOne: switch (right) { - case Zero: - result = One; + case TSQuantifierZero: + result = TSQuantifierOne; break; - case ZeroOrOne: - case ZeroOrMore: - case One: - case OneOrMore: - result = OneOrMore; + case TSQuantifierZeroOrOne: + case TSQuantifierZeroOrMore: + case TSQuantifierOne: + case TSQuantifierOneOrMore: + result = TSQuantifierOneOrMore; break; }; break; - case OneOrMore: - result = OneOrMore; + case TSQuantifierOneOrMore: + result = TSQuantifierOneOrMore; break; } return result; @@ -688,7 +688,7 @@ static TSQuantifier capture_quantifier_for_id( const CaptureQuantifiers *self, uint16_t id ) { - return (self->size <= id) ? Zero : *array_get(self, id); + return (self->size <= id) ? TSQuantifierZero : *array_get(self, id); } // Add the given quantifier to the current value for id @@ -745,7 +745,7 @@ static void capture_quantifiers_join_all( } for (uint32_t id = quantifiers->size; id < self->size; id++) { TSQuantifier *own_quantifier = array_get(self, id); - *own_quantifier = quantifier_join(*own_quantifier, Zero); + *own_quantifier = quantifier_join(*own_quantifier, TSQuantifierZero); } } @@ -2381,11 +2381,11 @@ static TSQueryError ts_query__parse_pattern( stream_skip_whitespace(stream); // Parse suffixes modifiers for this pattern - TSQuantifier quantifier = One; + TSQuantifier quantifier = TSQuantifierOne; for (;;) { // Parse the one-or-more operator. if (stream->next == '+') { - quantifier = quantifier_join(OneOrMore, quantifier); + quantifier = quantifier_join(TSQuantifierOneOrMore, quantifier); stream_advance(stream); stream_skip_whitespace(stream); @@ -2399,7 +2399,7 @@ static TSQueryError ts_query__parse_pattern( // Parse the zero-or-more repetition operator. else if (stream->next == '*') { - quantifier = quantifier_join(ZeroOrMore, quantifier); + quantifier = quantifier_join(TSQuantifierZeroOrMore, quantifier); stream_advance(stream); stream_skip_whitespace(stream); @@ -2419,7 +2419,7 @@ static TSQueryError ts_query__parse_pattern( // Parse the optional operator. else if (stream->next == '?') { - quantifier = quantifier_join(ZeroOrOne, quantifier); + quantifier = quantifier_join(TSQuantifierZeroOrOne, quantifier); stream_advance(stream); stream_skip_whitespace(stream); @@ -2453,7 +2453,7 @@ static TSQueryError ts_query__parse_pattern( query_step__add_capture(step, capture_id); // Add only once, not for every branch, lest the quantifier will be '+' instead of '1' if (step_index == starting_step_index) { - capture_quantifiers_add_for_id(capture_quantifiers, capture_id, One); + capture_quantifiers_add_for_id(capture_quantifiers, capture_id, TSQuantifierOne); } if ( step->alternative_index != NONE &&