// -*- coding: utf-8 -*- // // Copyright (C) 2024 Michael Büsch // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . // // SPDX-License-Identifier: GPL-2.0-or-later use anyhow as ah; #[derive(Debug)] pub enum Error { Ah(ah::Error), Sql(rusqlite::Error), } impl std::error::Error for Error {} impl std::fmt::Display for Error { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { match self { Self::Ah(e) => write!(f, "{e}"), Self::Sql(e) => write!(f, "{e}"), } } } impl From for Error { fn from(e: rusqlite::Error) -> Self { Self::Sql(e) } } impl From for Error { fn from(e: ah::Error) -> Self { Self::Ah(e) } } // vim: ts=4 sw=4 expandtab