pub struct GemPlugin;Expand description
Native gem plugin. name/version/platform come from metadata.gz when the
.gem is parseable, else (name, version) from the filename.
Trait Implementations§
Source§impl ArchiveTypePlugin for GemPlugin
impl ArchiveTypePlugin for GemPlugin
Source§fn schema_fields(&self) -> Vec<Field>
fn schema_fields(&self) -> Vec<Field>
Columns this handler contributes — the gem coords the read-side
GemView resolves on, plus the authoritative
platform (defaults to ruby).
Source§fn meta(&self) -> HandlerMeta
fn meta(&self) -> HandlerMeta
Discovery metadata — name, aliases, type_id, claimed extensions and the
per-handler subcommand “API”. Used by the registry to list and select
handlers at runtime. The default derives a minimal record from
Self::name / Self::type_id; native handlers override it with a
richer record (aliases, ecosystem, extensions, commands).Source§fn run_command(&self, cmd: &str, args: &[String]) -> Result<()>
fn run_command(&self, cmd: &str, args: &[String]) -> Result<()>
Dispatch a handler-specific subcommand (one of
HandlerMeta::commands).
Default: the handler exposes no extra subcommands.Source§fn matches_path(&self, path: &str) -> bool
fn matches_path(&self, path: &str) -> bool
Return true if this plugin wants to handle this file (checked before reading data).
Default false means the plugin is never called for that path.
Source§fn extract_metadata(&self, path: &str, data: &[u8]) -> Option<ExtensionRow>
fn extract_metadata(&self, path: &str, data: &[u8]) -> Option<ExtensionRow>
Per-file extraction. Return None to skip.
Source§fn supports_batch(&self) -> bool
fn supports_batch(&self) -> bool
Whether this plugin benefits from batched processing.
Source§fn batch_threshold(&self) -> usize
fn batch_threshold(&self) -> usize
Byte threshold to trigger batch flush (default 200MB).
Source§fn extract_batch(&self, items: &[BatchItem<'_>]) -> Vec<Option<ExtensionRow>>
fn extract_batch(&self, items: &[BatchItem<'_>]) -> Vec<Option<ExtensionRow>>
Batch extraction — process many files at once (zero-copy borrows).
Returns one Option per input item, in same order.
Auto Trait Implementations§
impl Freeze for GemPlugin
impl RefUnwindSafe for GemPlugin
impl Send for GemPlugin
impl Sync for GemPlugin
impl Unpin for GemPlugin
impl UnsafeUnpin for GemPlugin
impl UnwindSafe for GemPlugin
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more