49 lines
1.5 KiB
Rust
49 lines
1.5 KiB
Rust
//! Shared Unity-focused helpers for Mercury Toolbox commands.
|
|
#![allow(clippy::multiple_crate_versions)]
|
|
|
|
use common::CliError;
|
|
use thiserror::Error;
|
|
|
|
pub mod assets;
|
|
pub mod logs;
|
|
pub mod probe;
|
|
|
|
pub use assets::{
|
|
AssetDump, AssetDumpFieldMode, AssetExtractOutput, AssetExtractReport, AssetIndexRow,
|
|
AssetReferenceEntry, AssetReferences, ExtractionMode, dump_unity_asset, extract_unity_asset,
|
|
index_unity_assets, refs_unity_asset,
|
|
};
|
|
pub use logs::{
|
|
CountEntry, IncidentGroupMode, StackMode, UnityDiagOptions, UnityDiagReport, UnityDiagSummary,
|
|
UnityIncident, UnityLogKind, UnityLogSummary, UnitySeverity, analyze_log_paths,
|
|
analyze_log_text, discover_log_paths, parse_incident_group_mode, parse_stack_mode,
|
|
};
|
|
pub use probe::{
|
|
BRIDGE_PIPE_NAME, FindData, InspectData, InstallReport, ProbeEnvelope, RuntimeStatusData,
|
|
ScenesData, StaticData, StatusReport, UninstallReport, find_objects, inspect_object,
|
|
inspect_static, install_bridge, query_runtime_status, query_scenes, status_bridge,
|
|
uninstall_bridge,
|
|
};
|
|
|
|
/// Errors produced by the shared Unity support layer.
|
|
#[derive(Debug, Error)]
|
|
pub enum UnitySupportError {
|
|
/// Message-style runtime or validation error.
|
|
#[error("{0}")]
|
|
Message(String),
|
|
}
|
|
|
|
impl UnitySupportError {
|
|
/// Builds a new message-style error.
|
|
#[must_use]
|
|
pub fn message(message: impl Into<String>) -> Self {
|
|
Self::Message(message.into())
|
|
}
|
|
}
|
|
|
|
impl From<UnitySupportError> for CliError {
|
|
fn from(value: UnitySupportError) -> Self {
|
|
Self::runtime(value.to_string())
|
|
}
|
|
}
|