48 lines
1.3 KiB
Cheetah
48 lines
1.3 KiB
Cheetah
|
|
// Code generated by ndpgen. DO NOT EDIT.
|
||
|
|
//
|
||
|
|
//! Navidrome Host Function Wrappers for Rust Plugins
|
||
|
|
//!
|
||
|
|
//! This crate provides idiomatic Rust wrappers for all Navidrome host services.
|
||
|
|
//! It is auto-generated by the ndpgen tool and should not be edited manually.
|
||
|
|
//!
|
||
|
|
//! # Usage
|
||
|
|
//!
|
||
|
|
//! Add this crate as a dependency in your plugin's Cargo.toml:
|
||
|
|
//!
|
||
|
|
//! ```toml
|
||
|
|
//! [dependencies]
|
||
|
|
//! nd-host = { path = "../../host/rust" }
|
||
|
|
//! ```
|
||
|
|
//!
|
||
|
|
//! Then import the services you need:
|
||
|
|
//!
|
||
|
|
//! ```ignore
|
||
|
|
//! use nd_host::{cache, scheduler};
|
||
|
|
//!
|
||
|
|
//! fn my_plugin_function() -> Result<(), extism_pdk::Error> {
|
||
|
|
//! // Use the cache service
|
||
|
|
//! cache::set_string("my_key", "my_value", 3600)?;
|
||
|
|
//!
|
||
|
|
//! // Schedule a recurring task
|
||
|
|
//! scheduler::schedule_recurring("@every 5m", "payload", "task_id")?;
|
||
|
|
//!
|
||
|
|
//! Ok(())
|
||
|
|
//! }
|
||
|
|
//! ```
|
||
|
|
//!
|
||
|
|
//! # Available Services
|
||
|
|
//!
|
||
|
|
{{- range .Services}}
|
||
|
|
//! - [`{{.Name | lower}}`] - {{if .Doc}}{{.Doc | firstLine}}{{else}}{{.Name}} service{{end}}
|
||
|
|
{{- end}}
|
||
|
|
{{range .Services}}
|
||
|
|
#[doc(hidden)]
|
||
|
|
mod nd_host_{{.Name | lower}};
|
||
|
|
/// {{if .Doc}}{{.Doc | firstLine}}{{else}}{{.Name}} host service wrappers.{{end}}
|
||
|
|
pub mod {{.Name | lower}} {
|
||
|
|
pub use super::nd_host_{{.Name | lower}}::*;
|
||
|
|
}
|
||
|
|
{{end}}
|
||
|
|
// Re-export commonly used types from extism-pdk for convenience
|
||
|
|
pub use extism_pdk::Error;
|