#[plugin]Expand description
Attribute macro that turns a Default-constructible engine struct
into a loadable MySQL plugin.
§Arguments
name: plugin name (string literal, ASCII, ≤ 64 bytes, no NUL). SQL identifies the engine by this name inINSTALL PLUGIN <name>.description: human-readable description (string literal).version: plugin version, any const expression evaluating toc_uint(commonlyenv!("CARGO_PKG_VERSION")parsed elsewhere or a literal like0x0001).license: any const expression of typemysql_handler::license::License. The discriminant is folded into the static initialiser at compile time.author: author or organisation name (string literal).handlerton(optional): path to aDefault-constructible handlerton struct (typically a unit struct) implementingmysql_handler::hton::Handlerton. When supplied the generatedrust__plugin_initadditionally registers the handlerton so engine-level callbacks (transactions, savepoints, discovery) route through it. Omit when the engine only needs the per-handler surface.
§Example
ⓘ
use mysql_handler::prelude::*;
#[plugin(
name = "my_engine",
description = "Custom storage engine",
version = 0x0001,
license = License::Gpl,
author = "me",
)]
#[derive(Default)]
pub struct MyEngine;
impl mysql_handler::engine::StorageEngine for MyEngine {}