diff options
author | Matthias Baumgartner <dev@igsor.net> | 2023-01-13 10:14:18 +0100 |
---|---|---|
committer | Matthias Baumgartner <dev@igsor.net> | 2023-01-13 10:14:18 +0100 |
commit | 52fa64513dae60c3ed410622502f8c2369c1a348 (patch) | |
tree | 68abab59fe2c8f9392df39b19d51530c7a4b1d0d /tagit | |
parent | 9c366758665d9cfee7796ee45a8167a5412ae9ae (diff) | |
download | tagit-52fa64513dae60c3ed410622502f8c2369c1a348.tar.gz tagit-52fa64513dae60c3ed410622502f8c2369c1a348.tar.bz2 tagit-52fa64513dae60c3ed410622502f8c2369c1a348.zip |
moved filter parsing code
Diffstat (limited to 'tagit')
-rw-r--r-- | tagit/parsing/__init__.py | 4 | ||||
-rw-r--r-- | tagit/parsing/filter/__init__.py | 17 | ||||
-rw-r--r-- | tagit/parsing/filter/from_string.py (renamed from tagit/parsing/filter.py) | 8 | ||||
-rw-r--r-- | tagit/utils/errors.py | 4 | ||||
-rw-r--r-- | tagit/widgets/session.py | 2 |
5 files changed, 27 insertions, 8 deletions
diff --git a/tagit/parsing/__init__.py b/tagit/parsing/__init__.py index 0070bf9..86ad54f 100644 --- a/tagit/parsing/__init__.py +++ b/tagit/parsing/__init__.py @@ -6,12 +6,12 @@ Author: Matthias Baumgartner, 2022 """ # inner-module imports from .datefmt import parse_datetime -from .filter import Filter +from . import filter from .sort import Sort # exports __all__ = ( - 'Filter', + 'filter', 'Sort', 'parse_datetime', ) diff --git a/tagit/parsing/filter/__init__.py b/tagit/parsing/filter/__init__.py new file mode 100644 index 0000000..88b6256 --- /dev/null +++ b/tagit/parsing/filter/__init__.py @@ -0,0 +1,17 @@ +""" + +Part of the tagit module. +A copy of the license is provided with the project. +Author: Matthias Baumgartner, 2022 +""" +# inner-module imports +from .from_string import FromString +#from .to_string import ToString + +# exports +__all__ = ( + 'FromString', + #'ToString', + ) + +## EOF ## diff --git a/tagit/parsing/filter.py b/tagit/parsing/filter/from_string.py index ea8df51..5a38723 100644 --- a/tagit/parsing/filter.py +++ b/tagit/parsing/filter/from_string.py @@ -14,25 +14,23 @@ from datetime import datetime from pyparsing import CaselessKeyword, Combine, Group, Optional, Or, Word, delimitedList, nums, oneOf, ParseException, Literal, QuotedString, alphanums, alphas8bit, punc8bit # tagit imports +from tagit.parsing.datefmt import parse_datetime from tagit.utils import bsfs, errors, ns, ttime from tagit.utils.bsfs import ast -# inner-module imports -from .datefmt import parse_datetime - # constants SEARCH_DELIM = '/' VALUE_DELIM = ',' # exports __all__ = ( - 'Filter', + 'FromString', ) ## code ## -class Filter(): +class FromString(): # parsers _DATETIME_PREDICATES = None diff --git a/tagit/utils/errors.py b/tagit/utils/errors.py index 7a2556e..8b5e21a 100644 --- a/tagit/utils/errors.py +++ b/tagit/utils/errors.py @@ -53,4 +53,8 @@ class ParserError(Exception): """String parsing failure.""" pass +class BackendError(Exception): + """Generic backend error.""" + pass + ## EOF ## diff --git a/tagit/widgets/session.py b/tagit/widgets/session.py index ca8c595..f45ab35 100644 --- a/tagit/widgets/session.py +++ b/tagit/widgets/session.py @@ -40,7 +40,7 @@ class Session(Widget): self.storage = storage self.log = log # derived members - self.filter_from_string = parsing.Filter(self.storage.schema) + self.filter_from_string = parsing.filter.FromString(self.storage.schema) #self.sort_from_string = parsing.Sort(self.storage.schema) # FIXME: mb/port/parsing def __enter__(self): |