[{"id":"fcb5cf4713b4f1ed","package":"zencodec","signature":"impl dyn SourceEncodingDetails {\n    pub fn codec_details<T: SourceEncodingDetails + 'static>(&self) -> Option<&T>;\n}","context":"impl dyn SourceEncodingDetails {","kind":"function","provenance":"Source-backed supplement","detail":{"file":"src/detect.rs","line":99,"docs":"Downcast to a concrete codec probe type.\n\nReturns `Some(&T)` if the underlying type matches, `None` otherwise.\n\n```rust,ignore\nuse zenwebp::detect::WebPProbe;\n\nif let Some(webp) = details.codec_details::<WebPProbe>() {\n    println!(\"Lossy: {:?}\", webp.bitstream);\n}\n```","deprecated":null},"flows":[],"documentation":[{"text":"Downcast to a concrete codec probe type.\n\nReturns `Some(&T)` if the underlying type matches, `None` otherwise.\n\n"},{"code":"use zenwebp::detect::WebPProbe;\n\nif let Some(webp) = details.codec_details::<WebPProbe>() {\n    println!(\"Lossy: {:?}\", webp.bitstream);\n}\n","html":"<span style=\"color:#D73A49\">use</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">zenwebp</span><span style=\"color:#D73A49\">::</span><span style=\"color:#6F42C1\">detect</span><span style=\"color:#D73A49\">::</span><span style=\"color:#6F42C1\">WebPProbe</span><span style=\"color:#24292E\">;</span>\n\n<span style=\"color:#D73A49\">if</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">let</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">Some</span><span style=\"color:#24292E\">(webp) </span><span style=\"color:#D73A49\">=</span><span style=\"color:#24292E\"> details</span><span style=\"color:#D73A49\">.</span><span style=\"color:#6F42C1\">codec_details</span><span style=\"color:#D73A49\">::</span><span style=\"color:#24292E\">&lt;</span><span style=\"color:#6F42C1\">WebPProbe</span><span style=\"color:#24292E\">&gt;() {</span>\n<span style=\"color:#24292E\">    </span><span style=\"color:#6F42C1\">println!</span><span style=\"color:#24292E\">(</span><span style=\"color:#032F62\">&quot;Lossy: {:?}&quot;</span><span style=\"color:#24292E\">, webp</span><span style=\"color:#D73A49\">.</span><span style=\"color:#24292E\">bitstream);</span>\n<span style=\"color:#24292E\">}</span>\n"}],"html":"<span style=\"color:#D73A49\">impl</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">dyn</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">SourceEncodingDetails</span><span style=\"color:#24292E\"> {</span>\n<span style=\"color:#24292E\">    </span><span style=\"color:#D73A49\">pub</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">fn</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">codec_details</span><span style=\"color:#24292E\">&lt;</span><span style=\"color:#6F42C1\">T</span><span style=\"color:#D73A49\">:</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">SourceEncodingDetails</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">+</span><span style=\"color:#24292E\"> '</span><span style=\"color:#6F42C1\">static</span><span style=\"color:#24292E\">&gt;(</span><span style=\"color:#D73A49\">&amp;</span><span style=\"color:#005CC5\">self</span><span style=\"color:#24292E\">) </span><span style=\"color:#D73A49\">-&gt;</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">Option</span><span style=\"color:#24292E\">&lt;</span><span style=\"color:#D73A49\">&amp;</span><span style=\"color:#6F42C1\">T</span><span style=\"color:#24292E\">&gt;;</span>\n<span style=\"color:#24292E\">}</span>"},{"id":"29277038af0b5f4e","package":"zencodec","signature":"impl dyn SourceEncodingDetails + Send {\n    pub fn codec_details<T: SourceEncodingDetails + 'static>(&self) -> Option<&T>;\n}","context":"impl dyn SourceEncodingDetails + Send {","kind":"function","provenance":"Source-backed supplement","detail":{"file":"src/detect.rs","line":106,"docs":"Downcast to a concrete codec probe type.","deprecated":null},"flows":[],"documentation":[{"text":"Downcast to a concrete codec probe type."}],"html":"<span style=\"color:#D73A49\">impl</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">dyn</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">SourceEncodingDetails</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">+</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">Send</span><span style=\"color:#24292E\"> {</span>\n<span style=\"color:#24292E\">    </span><span style=\"color:#D73A49\">pub</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">fn</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">codec_details</span><span style=\"color:#24292E\">&lt;</span><span style=\"color:#6F42C1\">T</span><span style=\"color:#D73A49\">:</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">SourceEncodingDetails</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">+</span><span style=\"color:#24292E\"> '</span><span style=\"color:#6F42C1\">static</span><span style=\"color:#24292E\">&gt;(</span><span style=\"color:#D73A49\">&amp;</span><span style=\"color:#005CC5\">self</span><span style=\"color:#24292E\">) </span><span style=\"color:#D73A49\">-&gt;</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">Option</span><span style=\"color:#24292E\">&lt;</span><span style=\"color:#D73A49\">&amp;</span><span style=\"color:#6F42C1\">T</span><span style=\"color:#24292E\">&gt;;</span>\n<span style=\"color:#24292E\">}</span>"},{"id":"464a23f062357ff8","package":"zencodec","signature":"impl dyn SourceEncodingDetails + Send + Sync {\n    pub fn codec_details<T: SourceEncodingDetails + 'static>(&self) -> Option<&T>;\n}","context":"impl dyn SourceEncodingDetails + Send + Sync {","kind":"function","provenance":"Source-backed supplement","detail":{"file":"src/detect.rs","line":113,"docs":"Downcast to a concrete codec probe type.","deprecated":null},"flows":[],"documentation":[{"text":"Downcast to a concrete codec probe type."}],"html":"<span style=\"color:#D73A49\">impl</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">dyn</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">SourceEncodingDetails</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">+</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">Send</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">+</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">Sync</span><span style=\"color:#24292E\"> {</span>\n<span style=\"color:#24292E\">    </span><span style=\"color:#D73A49\">pub</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">fn</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">codec_details</span><span style=\"color:#24292E\">&lt;</span><span style=\"color:#6F42C1\">T</span><span style=\"color:#D73A49\">:</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">SourceEncodingDetails</span><span style=\"color:#24292E\"> </span><span style=\"color:#D73A49\">+</span><span style=\"color:#24292E\"> '</span><span style=\"color:#6F42C1\">static</span><span style=\"color:#24292E\">&gt;(</span><span style=\"color:#D73A49\">&amp;</span><span style=\"color:#005CC5\">self</span><span style=\"color:#24292E\">) </span><span style=\"color:#D73A49\">-&gt;</span><span style=\"color:#24292E\"> </span><span style=\"color:#6F42C1\">Option</span><span style=\"color:#24292E\">&lt;</span><span style=\"color:#D73A49\">&amp;</span><span style=\"color:#6F42C1\">T</span><span style=\"color:#24292E\">&gt;;</span>\n<span style=\"color:#24292E\">}</span>"}]