| Crates.io | beamer-macros |
| lib.rs | beamer-macros |
| version | 0.1.6 |
| created_at | 2026-01-04 18:12:09.018297+00 |
| updated_at | 2026-01-08 16:03:08.022578+00 |
| description | Derive macros for the Beamer VST3 framework |
| homepage | |
| repository | https://github.com/helpermedia/beamer |
| max_upload_size | |
| id | 2022282 |
| size | 98,383 |
Derive macros for the Beamer VST3 framework.
This crate provides procedural macros that generate boilerplate code for plugins:
#[derive(Parameters)]: Generates parameter traits, VST3 integration, state persistence, and Default implementation#[derive(HasParameters)]: Generates parameters() and parameters_mut() accessors for Plugin and AudioProcessor types#[derive(EnumParameter)]: Generates enum parameter variants with display names#[parameter(id, name, default, range, kind)]Most users should use the beamer crate instead, which re-exports these macros with the derive feature (enabled by default).
use beamer::prelude::*;
use beamer::{HasParameters, Parameters};
#[derive(Parameters)]
struct GainParameters {
#[parameter(id = "gain", name = "Gain", default = 0.0, range = -60.0..=12.0, kind = "db")]
gain: FloatParameter,
}
#[derive(Default, HasParameters)]
struct GainPlugin {
#[parameters]
parameters: GainParameters,
}
See the main repository for:
MIT