From eae8d9d571eaf13b707947d3ca6526fe1a24b0dd Mon Sep 17 00:00:00 2001 From: Jann Stute Date: Wed, 27 Nov 2024 20:50:41 +0100 Subject: [PATCH] fix: term was parsing ANDList instead of ORList --- tagstudio/src/core/query_lang/parser.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tagstudio/src/core/query_lang/parser.py b/tagstudio/src/core/query_lang/parser.py index 63525ca2..d185b841 100644 --- a/tagstudio/src/core/query_lang/parser.py +++ b/tagstudio/src/core/query_lang/parser.py @@ -1,3 +1,5 @@ +from typing import Union + from src.core.query_lang.ast import AST, ANDList, Constraint, ORList, Property from src.core.query_lang.tokenizer import ConstraintType, Token, Tokenizer, TokenType from src.core.query_lang.util import ParsingError @@ -50,10 +52,10 @@ class Parser: def __is_next_or(self) -> bool: return self.next_token.type == TokenType.ULITERAL and self.next_token.value.upper() == "OR" - def __term(self) -> AST: + def __term(self) -> Union["ORList", "Constraint"]: if self.next_token.type == TokenType.RBRACKETO: self.__eat(TokenType.RBRACKETO) - out = self.__and_list() + out = self.__or_list() self.__eat(TokenType.RBRACKETC) return out else: