diff --git a/openfold/data/errors.py b/openfold/data/errors.py new file mode 100644 index 00000000..7809d5ae --- /dev/null +++ b/openfold/data/errors.py @@ -0,0 +1,22 @@ +# Copyright 2021 AlQuraishi Laboratory +# Copyright 2021 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""General-purpose errors used throughout the data pipeline""" +class Error(Exception): + """Base class for exceptions.""" + + +class MultipleChainsError(Error): + """An error indicating that multiple chains were found for a given ID.""" diff --git a/openfold/data/mmcif_parsing.py b/openfold/data/mmcif_parsing.py index 0420e1b6..e59a51e9 100644 --- a/openfold/data/mmcif_parsing.py +++ b/openfold/data/mmcif_parsing.py @@ -26,7 +26,7 @@ from Bio.Data import SCOPData import numpy as np -from openfold.data.templates import MultipleChainsError +from openfold.data.errors import MultipleChainsError import openfold.np.residue_constants as residue_constants diff --git a/openfold/data/templates.py b/openfold/data/templates.py index 3acd1f9e..558c9878 100644 --- a/openfold/data/templates.py +++ b/openfold/data/templates.py @@ -26,15 +26,12 @@ import numpy as np from openfold.data import parsers, mmcif_parsing +from openfold.data.errors import Error from openfold.data.tools import kalign from openfold.data.tools.utils import to_date from openfold.np import residue_constants -class Error(Exception): - """Base class for exceptions.""" - - class NoChainsError(Error): """An error indicating that template mmCIF didn't have any chains.""" @@ -59,10 +56,6 @@ class CaDistanceError(Error): """An error indicating that a CA atom distance exceeds a threshold.""" -class MultipleChainsError(Error): - """An error indicating that multiple chains were found for a given ID.""" - - # Prefilter exceptions. class PrefilterError(Exception): """A base class for template prefilter exceptions."""