1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//! Execution backend configuration for extension crates.
//!
//! ## Purpose
//!
//! This module defines the `Backend` enum used by extension crates
//! to select computational backends at runtime. The core `loess-rs` crate does not
//! implement GPU acceleration directly; this serves as a configuration placeholder
//! for downstream crates.
//!
//! ## Design notes
//!
//! * **Extension-focused**: These types exist to support GPU-accelerated crates.
//! * **Hidden by default**: Fields using `Backend` are `#[doc(hidden)]` in public APIs.
//!
//! ## Key concepts
//!
//! * **CPU**: Default execution mode (standard Rust code).
//! * **GPU**: Hardware accelerated mode (requires external dependencies).
//!
//! ## Invariants
//!
//! * The default backend is always `CPU`.
//!
//! ## Non-goals
//!
//! * This module does not provide GPU implementations (handled by external crates).
/// Execution backend hint for extension crates.