Skip to main content

fission_icons/
lib.rs

1//! Compile-time Material Design icon access for the Fission UI framework.
2//!
3//! Icons are organized as `material::<category>::<icon_name>::<variant>()` and
4//! return `&'static str` containing the 24px SVG markup.
5//!
6//! # Usage
7//!
8//! ```rust,ignore
9//! use fission_icons::material;
10//! let svg: &str = material::navigation::close::regular();
11//! ```
12//!
13//! # Variants
14//!
15//! Each icon may have up to five style variants: `regular()`, `outlined()`,
16//! `round()`, `sharp()`, and `two_tone()`.
17
18/// Material Design icon set, generated at build time from SVG source files.
19///
20/// Access icons via `material::<category>::<icon_name>::<variant>()`.
21/// For example: `material::action::home::regular()` returns the home icon SVG.
22///
23/// When the `reflection` feature is enabled, call `all_icons()` to get a
24/// `Vec` of `(category, name, variant, fn() -> &'static str)` tuples.
25pub mod material {
26    include!(concat!(env!("OUT_DIR"), "/material_icons.rs"));
27}