tmc_langs_plugins/
error.rs

1//! Contains the PluginError type.
2
3use std::path::PathBuf;
4// the Java plugin is disabled on musl
5#[cfg(not(target_env = "musl"))]
6use tmc_langs_java::JavaError;
7
8#[derive(thiserror::Error, Debug)]
9pub enum PluginError {
10    // on musl, warn the user about the Java plugin being nonfunctional
11    #[cfg(not(target_env = "musl"))]
12    #[error("No matching plugin found for {0}")]
13    PluginNotFound(PathBuf),
14    #[cfg(target_env = "musl")]
15    #[error("No matching plugin found for {0}. Note that Java support is disabled on musl.")]
16    PluginNotFound(PathBuf),
17    #[error("No matching plugin found in archive.")]
18    PluginNotFoundInArchive,
19    #[error(transparent)]
20    Tmc(#[from] tmc_langs_framework::TmcError),
21    #[error(transparent)]
22    Walkdir(#[from] walkdir::Error),
23}
24
25// the Java plugin is disabled on musl
26#[cfg(not(target_env = "musl"))]
27impl From<JavaError> for PluginError {
28    fn from(e: JavaError) -> Self {
29        Self::Tmc(e.into())
30    }
31}