php-discovery 0.1.2

discover available PHP binaries in locale system.
Documentation
use std::io::Error;
use std::path::PathBuf;

use crate::implement_from_for_enum;

#[derive(Debug)]
pub enum InstallationError {
    BinaryIsNotExecutable(PathBuf),
    CommandError(Error),
    FailedToRetrieveAPIVersion,
    #[cfg(target_family = "windows")]
    FailedToRetrieveArch,
}

#[derive(Debug)]
pub enum DiscoveryError {
    FailedToReadDirectory(Error),
    InstallationError(InstallationError),
    #[cfg(windows)]
    FailedToLocateSystemDrive,
}

implement_from_for_enum!(Error, InstallationError, CommandError);
implement_from_for_enum!(Error, DiscoveryError, FailedToReadDirectory);
implement_from_for_enum!(InstallationError, DiscoveryError, InstallationError);