Skip to main content

ChainInput

Trait ChainInput 

Source
pub trait ChainInput: Component {
    const KIND_UNKNOWN: &'static str;
    const KIND_PARAMS: &'static str;
    const FORCE_ALWAYS_DIRTY: bool;

    // Required method
    fn chain(&self) -> &FilterChain;

    // Provided method
    fn validate_entry(
        _name: &str,
        _is_morph: bool,
        _passes: &[ResolvedFilterPass],
    ) -> Result<(), String> { ... }
}
Expand description

Input side of one resolve_chains instance: which wire-chain component feeds it, its diag kinds, and per-instance semantics. Implemented by FilterInput (the content filter chain) and BackdropInput (backdropFilter).

Required Associated Constants§

Source

const KIND_UNKNOWN: &'static str

Diag kind reported for an unknown filter name.

Source

const KIND_PARAMS: &'static str

Diag kind reported for rejected params.

Source

const FORCE_ALWAYS_DIRTY: bool

Force always_dirty on every resolved chain. Backdrop chains set this: their source (the frame behind the node) is live, so the filter run must re-stage every frame regardless of USES_TIME.

Required Methods§

Source

fn chain(&self) -> &FilterChain

Provided Methods§

Source

fn validate_entry( _name: &str, _is_morph: bool, _passes: &[ResolvedFilterPass], ) -> Result<(), String>

Per-instance validation of one entry: the registered name, its family bit (crate::filters::ReactFilter::IS_MORPH), and its resolved passes; Err warns under Self::KIND_PARAMS and skips the entry. Every instance enforces the family split (regular chains reject morph filters and vice versa — the two are separate registries in the generated TypeScript too); the morph instance additionally checks its single-pass + reserved-param-vec caps (see crate::filters::MorphInput).

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl ChainInput for BackdropInput

Source§

const KIND_UNKNOWN: &'static str = "backdropFilterUnknown"

Source§

const KIND_PARAMS: &'static str = "backdropFilterParams"

Source§

const FORCE_ALWAYS_DIRTY: bool = true

Source§

impl ChainInput for FilterInput

Source§

const KIND_UNKNOWN: &'static str = "filterUnknown"

Source§

const KIND_PARAMS: &'static str = "filterParams"

Source§

const FORCE_ALWAYS_DIRTY: bool = false

Source§

impl ChainInput for MorphInput

Source§

const KIND_UNKNOWN: &'static str = "morphFilterUnknown"

Source§

const KIND_PARAMS: &'static str = "morphFilterParams"

Source§

const FORCE_ALWAYS_DIRTY: bool = false