You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

182 lines
46 KiB

5 years ago
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Event` enum in crate `wayland_client`."><meta name="keywords" content="rust, rustlang, rust-lang, Event"><title>wayland_client::protocol::wl_pointer::Event - Rust</title><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc enum"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../wayland_client/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Enum Event</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#variants">Variants</a><div class="sidebar-links"><a href="#variant.Enter">Enter</a><a href="#variant.Leave">Leave</a><a href="#variant.Motion">Motion</a><a href="#variant.Button">Button</a><a href="#variant.Axis">Axis</a><a href="#variant.Frame">Frame</a><a href="#variant.AxisSource">AxisSource</a><a href="#variant.AxisStop">AxisStop</a><a href="#variant.AxisDiscrete">AxisDiscrete</a></div><a class="sidebar-title" href="#implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-MessageGroup">MessageGroup</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-RefUnwindSafe">!RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">!UnwindSafe</a></div><a class="sidebar-title" href="#blanket-implementations">Blanket Implementations</a><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a></div></div><p class='location'><a href='../../index.html'>wayland_client</a>::<wbr><a href='../index.html'>protocol</a>::<wbr><a href='index.html'>wl_pointer</a></p><script>window.sidebarCurrent = {name: 'Event', ty: 'enum', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/wayland_client/home/mrh/source/Trac3r-rust/target/debug/build/wayland-client-8934662
Enter {
serial: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
surface: <a class="struct" href="../../../wayland_client/struct.Proxy.html" title="struct wayland_client::Proxy">Proxy</a>&lt;<a class="struct" href="../../../wayland_client/protocol/wl_surface/struct.WlSurface.html" title="struct wayland_client::protocol::wl_surface::WlSurface">WlSurface</a>&gt;,
surface_x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>,
surface_y: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>,
},
Leave {
serial: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
surface: <a class="struct" href="../../../wayland_client/struct.Proxy.html" title="struct wayland_client::Proxy">Proxy</a>&lt;<a class="struct" href="../../../wayland_client/protocol/wl_surface/struct.WlSurface.html" title="struct wayland_client::protocol::wl_surface::WlSurface">WlSurface</a>&gt;,
},
Motion {
time: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
surface_x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>,
surface_y: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>,
},
Button {
serial: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
time: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
button: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
state: <a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.ButtonState.html" title="enum wayland_client::protocol::wl_pointer::ButtonState">ButtonState</a>,
},
Axis {
time: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
axis: <a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Axis.html" title="enum wayland_client::protocol::wl_pointer::Axis">Axis</a>,
value: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a>,
},
Frame,
AxisSource {
axis_source: <a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.AxisSource.html" title="enum wayland_client::protocol::wl_pointer::AxisSource">AxisSource</a>,
},
AxisStop {
time: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
axis: <a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Axis.html" title="enum wayland_client::protocol::wl_pointer::Axis">Axis</a>,
},
AxisDiscrete {
axis: <a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Axis.html" title="enum wayland_client::protocol::wl_pointer::Axis">Axis</a>,
discrete: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
},
}</pre></div><h2 id='variants' class='variants small-section-header'>
Variants<a href='#variants' class='anchor'></a></h2>
<div id="variant.Enter" class="variant small-section-header"><a href="#variant.Enter" class="anchor field"></a><code id='Enter.v'>Enter</code></div><div class='docblock'><p>enter event</p>
<p>Notification that this seat's pointer is focused on a certain
surface.</p>
<p>When a seat's focus enters a surface, the pointer image
is undefined and a client should respond to this event by setting
an appropriate pointer image with the set_cursor request.</p>
</div><div class='autohide sub-variant' id='variant.Enter.fields'><h3>Fields of <b>Enter</b></h3><div><span id="variant.Enter.field.serial" class="variant small-section-header"><a href="#variant.Enter.field.serial" class="anchor field"></a><code id='Enter.v.serial.v'>serial:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span><span id="variant.Enter.field.surface" class="variant small-section-header"><a href="#variant.Enter.field.surface" class="anchor field"></a><code id='Enter.v.surface.v'>surface:&nbsp;<a class="struct" href="../../../wayland_client/struct.Proxy.html" title="struct wayland_client::Proxy">Proxy</a>&lt;<a class="struct" href="../../../wayland_client/protocol/wl_surface/struct.WlSurface.html" title="struct wayland_client::protocol::wl_surface::WlSurface">WlSurface</a>&gt;</code></span><span id="variant.Enter.field.surface_x" class="variant small-section-header"><a href="#variant.Enter.field.surface_x" class="anchor field"></a><code id='Enter.v.surface_x.v'>surface_x:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a></code></span><span id="variant.Enter.field.surface_y" class="variant small-section-header"><a href="#variant.Enter.field.surface_y" class="anchor field"></a><code id='Enter.v.surface_y.v'>surface_y:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a></code></span></div></div><div id="variant.Leave" class="variant small-section-header"><a href="#variant.Leave" class="anchor field"></a><code id='Leave.v'>Leave</code></div><div class='docblock'><p>leave event</p>
<p>Notification that this seat's pointer is no longer focused on
a certain surface.</p>
<p>The leave notification is sent before the enter notification
for the new focus.</p>
</div><div class='autohide sub-variant' id='variant.Leave.fields'><h3>Fields of <b>Leave</b></h3><div><span id="variant.Leave.field.serial" class="variant small-section-header"><a href="#variant.Leave.field.serial" class="anchor field"></a><code id='Leave.v.serial.v'>serial:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span><span id="variant.Leave.field.surface" class="variant small-section-header"><a href="#variant.Leave.field.surface" class="anchor field"></a><code id='Leave.v.surface.v'>surface:&nbsp;<a class="struct" href="../../../wayland_client/struct.Proxy.html" title="struct wayland_client::Proxy">Proxy</a>&lt;<a class="struct" href="../../../wayland_client/protocol/wl_surface/struct.WlSurface.html" title="struct wayland_client::protocol::wl_surface::WlSurface">WlSurface</a>&gt;</code></span></div></div><div id="variant.Motion" class="variant small-section-header"><a href="#variant.Motion" class="anchor field"></a><code id='Motion.v'>Motion</code></div><div class='docblock'><p>pointer motion event</p>
<p>Notification of pointer location change. The arguments
surface_x and surface_y are the location relative to the
focused surface.</p>
</div><div class='autohide sub-variant' id='variant.Motion.fields'><h3>Fields of <b>Motion</b></h3><div><span id="variant.Motion.field.time" class="variant small-section-header"><a href="#variant.Motion.field.time" class="anchor field"></a><code id='Motion.v.time.v'>time:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span><span id="variant.Motion.field.surface_x" class="variant small-section-header"><a href="#variant.Motion.field.surface_x" class="anchor field"></a><code id='Motion.v.surface_x.v'>surface_x:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a></code></span><span id="variant.Motion.field.surface_y" class="variant small-section-header"><a href="#variant.Motion.field.surface_y" class="anchor field"></a><code id='Motion.v.surface_y.v'>surface_y:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a></code></span></div></div><div id="variant.Button" class="variant small-section-header"><a href="#variant.Button" class="anchor field"></a><code id='Button.v'>Button</code></div><div class='docblock'><p>pointer button event</p>
<p>Mouse button click and release notifications.</p>
<p>The location of the click is given by the last motion or
enter event.
The time argument is a timestamp with millisecond
granularity, with an undefined base.</p>
</div><div class='autohide sub-variant' id='variant.Button.fields'><h3>Fields of <b>Button</b></h3><div><span id="variant.Button.field.serial" class="variant small-section-header"><a href="#variant.Button.field.serial" class="anchor field"></a><code id='Button.v.serial.v'>serial:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span><span id="variant.Button.field.time" class="variant small-section-header"><a href="#variant.Button.field.time" class="anchor field"></a><code id='Button.v.time.v'>time:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span><span id="variant.Button.field.button" class="variant small-section-header"><a href="#variant.Button.field.button" class="anchor field"></a><code id='Button.v.button.v'>button:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span><span id="variant.Button.field.state" class="variant small-section-header"><a href="#variant.Button.field.state" class="anchor field"></a><code id='Button.v.state.v'>state:&nbsp;<a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.ButtonState.html" title="enum wayland_client::protocol::wl_pointer::ButtonState">ButtonState</a></code></span></div></div><div id="variant.Axis" class="variant small-section-header"><a href="#variant.Axis" class="anchor field"></a><code id='Axis.v'>Axis</code></div><div class='docblock'><p>axis event</p>
<p>Scroll and other axis notifications.</p>
<p>For scroll events (vertical and horizontal scroll axes), the
value parameter is the length of a vector along the specified
axis in a coordinate space identical to those of motion events,
representing a relative movement along the specified axis.</p>
<p>For devices that support movements non-parallel to axes multiple
axis events will be emitted.</p>
<p>When applicable, for example for touch pads, the server can
choose to emit scroll events where the motion vector is
equivalent to a motion event vector.</p>
<p>When applicable, a client can transform its content relative to the
scroll distance.</p>
</div><div class='autohide sub-variant' id='variant.Axis.fields'><h3>Fields of <b>Axis</b></h3><div><span id="variant.Axis.field.time" class="variant small-section-header"><a href="#variant.Axis.field.time" class="anchor field"></a><code id='Axis.v.time.v'>time:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span><span id="variant.Axis.field.axis" class="variant small-section-header"><a href="#variant.Axis.field.axis" class="anchor field"></a><code id='Axis.v.axis.v'>axis:&nbsp;<a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Axis.html" title="enum wayland_client::protocol::wl_pointer::Axis">Axis</a></code></span><span id="variant.Axis.field.value" class="variant small-section-header"><a href="#variant.Axis.field.value" class="anchor field"></a><code id='Axis.v.value.v'>value:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a></code></span></div></div><div id="variant.Frame" class="variant small-section-header"><a href="#variant.Frame" class="anchor field"></a><code id='Frame.v'>Frame</code></div><div class='docblock'><p>end of a pointer event sequence</p>
<p>Indicates the end of a set of events that logically belong together.
A client is expected to accumulate the data in all events within the
frame before proceeding.</p>
<p>All wl_pointer events before a wl_pointer.frame event belong
logically together. For example, in a diagonal scroll motion the
compositor will send an optional wl_pointer.axis_source event, two
wl_pointer.axis events (horizontal and vertical) and finally a
wl_pointer.frame event. The client may use this information to
calculate a diagonal vector for scrolling.</p>
<p>When multiple wl_pointer.axis events occur within the same frame,
the motion vector is the combined motion of all events.
When a wl_pointer.axis and a wl_pointer.axis_stop event occur within
the same frame, this indicates that axis movement in one axis has
stopped but continues in the other axis.
When multiple wl_pointer.axis_stop events occur within the same
frame, this indicates that these axes stopped in the same instance.</p>
<p>A wl_pointer.frame event is sent for every logical event group,
even if the group only contains a single wl_pointer event.
Specifically, a client may get a sequence: motion, frame, button,
frame, axis, frame, axis_stop, frame.</p>
<p>The wl_pointer.enter and wl_pointer.leave events are logical events
generated by the compositor and not the hardware. These events are
also grouped by a wl_pointer.frame. When a pointer moves from one
surface to another, a compositor should group the
wl_pointer.leave event within the same wl_pointer.frame.
However, a client must not rely on wl_pointer.leave and
wl_pointer.enter being in the same wl_pointer.frame.
Compositor-specific policies may require the wl_pointer.leave and
wl_pointer.enter event being split across multiple wl_pointer.frame
groups.</p>
<p>Only available since version 5 of the interface</p>
</div><div id="variant.AxisSource" class="variant small-section-header"><a href="#variant.AxisSource" class="anchor field"></a><code id='AxisSource.v'>AxisSource</code></div><div class='docblock'><p>axis source event</p>
<p>Source information for scroll and other axes.</p>
<p>This event does not occur on its own. It is sent before a
wl_pointer.frame event and carries the source information for
all events within that frame.</p>
<p>The source specifies how this event was generated. If the source is
wl_pointer.axis_source.finger, a wl_pointer.axis_stop event will be
sent when the user lifts the finger off the device.</p>
<p>If the source is wl_pointer axis_source.wheel or
wl_pointer.axis_source.continuous, a wl_pointer.axis_stop event may
or may not be sent. Whether a compositor sends an axis_stop event
for these sources is hardware-specific and implementation-dependent;
clients must not rely on receiving an axis_stop event for these
scroll sources and should treat scroll sequences from these scroll
sources as unterminated by default.</p>
<p>This event is optional. If the source is unknown for a particular
axis event sequence, no event is sent.
Only one wl_pointer.axis_source event is permitted per frame.</p>
<p>The order of wl_pointer.axis_discrete and wl_pointer.axis_source is
not guaranteed.</p>
<p>Only available since version 5 of the interface</p>
</div><div class='autohide sub-variant' id='variant.AxisSource.fields'><h3>Fields of <b>AxisSource</b></h3><div><span id="variant.AxisSource.field.axis_source" class="variant small-section-header"><a href="#variant.AxisSource.field.axis_source" class="anchor field"></a><code id='AxisSource.v.axis_source.v'>axis_source:&nbsp;<a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.AxisSource.html" title="enum wayland_client::protocol::wl_pointer::AxisSource">AxisSource</a></code></span></div></div><div id="variant.AxisStop" class="variant small-section-header"><a href="#variant.AxisStop" class="anchor field"></a><code id='AxisStop.v'>AxisStop</code></div><div class='docblock'><p>axis stop event</p>
<p>Stop notification for scroll and other axes.</p>
<p>For some wl_pointer.axis_source types, a wl_pointer.axis_stop event
is sent to notify a client that the axis sequence has terminated.
This enables the client to implement kinetic scrolling.
See the wl_pointer.axis_source documentation for information on when
this event may be generated.</p>
<p>Any wl_pointer.axis events with the same axis_source after this
event should be considered as the start of a new axis motion.</p>
<p>The timestamp is to be interpreted identical to the timestamp in the
wl_pointer.axis event. The timestamp value may be the same as a
preceding wl_pointer.axis event.</p>
<p>Only available since version 5 of the interface</p>
</div><div class='autohide sub-variant' id='variant.AxisStop.fields'><h3>Fields of <b>AxisStop</b></h3><div><span id="variant.AxisStop.field.time" class="variant small-section-header"><a href="#variant.AxisStop.field.time" class="anchor field"></a><code id='AxisStop.v.time.v'>time:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span><span id="variant.AxisStop.field.axis" class="variant small-section-header"><a href="#variant.AxisStop.field.axis" class="anchor field"></a><code id='AxisStop.v.axis.v'>axis:&nbsp;<a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Axis.html" title="enum wayland_client::protocol::wl_pointer::Axis">Axis</a></code></span></div></div><div id="variant.AxisDiscrete" class="variant small-section-header"><a href="#variant.AxisDiscrete" class="anchor field"></a><code id='AxisDiscrete.v'>AxisDiscrete</code></div><div class='docblock'><p>axis click event</p>
<p>Discrete step information for scroll and other axes.</p>
<p>This event carries the axis value of the wl_pointer.axis event in
discrete steps (e.g. mouse wheel clicks).</p>
<p>This event does not occur on its own, it is coupled with a
wl_pointer.axis event that represents this axis value on a
continuous scale. The protocol guarantees that each axis_discrete
event is always followed by exactly one axis event with the same
axis number within the same wl_pointer.frame. Note that the protocol
allows for other events to occur between the axis_discrete and
its coupled axis event, including other axis_discrete or axis
events.</p>
<p>This event is optional; continuous scrolling devices
like two-finger scrolling on touchpads do not have discrete
steps and do not generate this event.</p>
<p>The discrete value carries the directional information. e.g. a value
of -2 is two steps towards the negative direction of this axis.</p>
<p>The axis number is identical to the axis number in the associated
axis event.</p>
<p>The order of wl_pointer.axis_discrete and wl_pointer.axis_source is
not guaranteed.</p>
<p>Only available since version 5 of the interface</p>
</div><div class='autohide sub-variant' id='variant.AxisDiscrete.fields'><h3>Fields of <b>AxisDiscrete</b></h3><div><span id="variant.AxisDiscrete.field.axis" class="variant small-section-header"><a href="#variant.AxisDiscrete.field.axis" class="anchor field"></a><code id='AxisDiscrete.v.axis.v'>axis:&nbsp;<a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Axis.html" title="enum wayland_client::protocol::wl_pointer::Axis">Axis</a></code></span><span id="variant.AxisDiscrete.field.discrete" class="variant small-section-header"><a href="#variant.AxisDiscrete.field.discrete" class="anchor field"></a><code id='AxisDiscrete.v.discrete.v'>discrete:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span></div></div><h2 id='implementations' class='small-section-header'>Trait Implementations<a href='#implementations' class='anchor'></a></h2><div id='implementations-list'><h3 id='impl-MessageGroup' class='impl'><code class='in-band'>impl <a class="trait" href="../../../wayland_client/trait.MessageGroup.html" title="trait wayland_client::MessageGroup">MessageGroup</a> for <a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Event.html" title="enum wayland_client::protocol::wl_pointer::Event">Event</a></code><a href='#impl-MessageGroup' class='anchor'></a><a class='srclink' href='../../../src/wayland_client/home/mrh/source/Trac3r-rust/target/debug/build/wayland-client-893466244f089367/out/wayland_c_api.rs.html#1' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedconstant.MESSAGES' class="associatedconstant hidden"><code id='MESSAGES.v'>const <a href='../../../wayland_client/trait.MessageGroup.html#associatedconstant.MESSAGES' class="constant"><b>MESSAGES</b></a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'static [</a><a class="struct" href="../../../wayland_commons/wire/struct.MessageDesc.html" title="struct wayland_commons::wire::MessageDesc">MessageDesc</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../../../src/wayland_client/home/mrh/source/Trac3r-rust/target/debug/build/wayland-client-893466244f089367/out/wayland_c_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Wire representation of this MessageGroup</p>
</div><h4 id='associatedtype.Map' class="type"><code id='Map.t'>type <a href='../../../wayland_client/trait.MessageGroup.html#associatedtype.Map' class="type">Map</a> = <a class="enum" href="../../../wayland_client/enum.ProxyMap.html" title="enum wayland_client::ProxyMap">ProxyMap</a></code></h4><div class='docblock'><p>The wrapper type for ObjectMap allowing the mapping of Object and NewId arguments to the object map during parsing. <a href="../../../wayland_client/trait.MessageGroup.html#associatedtype.Map">Read more</a></p>
</div><h4 id='method.is_destructor' class="method hidden"><code id='is_destructor.v'>fn <a href='../../../wayland_client/trait.MessageGroup.html#tymethod.is_destructor' class='fnname'>is_destructor</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class='srclink' href='../../../src/wayland_client/home/mrh/source/Trac3r-rust/target/debug/build/wayland-client-893466244f089367/out/wayland_c_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Whether this message is a destructor <a href="../../../wayland_client/trait.MessageGroup.html#tymethod.is_destructor">Read more</a></p>
</div><h4 id='method.opcode' class="method hidden"><code id='opcode.v'>fn <a href='../../../wayland_client/trait.MessageGroup.html#tymethod.opcode' class='fnname'>opcode</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a></code><a class='srclink' href='../../../src/wayland_client/home/mrh/source/Trac3r-rust/target/debug/build/wayland-client-893466244f089367/out/wayland_c_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>The opcode of this message</p>
</div><h4 id='method.child' class="method hidden"><code id='child.v'>fn <a href='../../../wayland_client/trait.MessageGroup.html#tymethod.child' class='fnname'>child</a>&lt;Meta:&nbsp;<a class="trait" href="../../../wayland_commons/map/trait.ObjectMetadata.html" title="trait wayland_commons::map::ObjectMetadata">ObjectMetadata</a>&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;opcode: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;version: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;meta: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Meta<br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../../wayland_commons/map/struct.Object.html" title="struct wayland_commons::map::Object">Object</a>&lt;Meta&gt;&gt;</code><a class='srclink' href='../../../src/wayland_client/home/mrh/source/Trac3r-rust/target/debug/build/wayland-client-893466244f089367/out/wayland_c_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Retrieve the child <code>Object</code> associated with this message if any</p>
</div><h4 id='method.from_raw' class="method hidden"><code id='from_raw.v'>fn <a href='../../../wayland_client/trait.MessageGroup.html#tymethod.from_raw' class='fnname'>from_raw</a>(msg: <a class="struct" href="../../../wayland_commons/wire/struct.Message.html" title="struct wayland_commons::wire::Message">Message</a>, map: &amp;mut Self::<a class="type" href="../../../wayland_client/trait.MessageGroup.html#associatedtype.Map" title="type wayland_client::MessageGroup::Map">Map</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt;</code><a class='srclink' href='../../../src/wayland_client/home/mrh/source/Trac3r-rust/target/debug/build/wayland-client-893466244f089367/out/wayland_c_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Construct a message from its raw representation</p>
</div><h4 id='method.into_raw' class="method hidden"><code id='into_raw.v'>fn <a href='../../../wayland_client/trait.MessageGroup.html#tymethod.into_raw' class='fnname'>into_raw</a>(self, sender_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="struct" href="../../../wayland_commons/wire/struct.Message.html" title="struct wayland_commons::wire::Message">Message</a></code><a class='srclink' href='../../../src/wayland_client/home/mrh/source/Trac3r-rust/target/debug/build/wayland-client-893466244f089367/out/wayland_c_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Turn this message into its raw representation</p>
</div><h4 id='method.from_raw_c' class="method hidden"><code id='from_raw_c.v'>unsafe fn <a href='../../../wayland_client/trait.MessageGroup.html#tymethod.from_raw_c' class='fnname'>from_raw_c</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;obj: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut </a><a class="enum" href="https://doc.rust-lang.org/nightly/core/ffi/enum.c_void.html" title="enum core::ffi::c_void">c_void</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;opcode: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;args: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*const </a><a class="union" href="../../../wayland_client/sys/common/union.wl_argument.html" title="union wayland_client::sys::common::wl_argument">wl_argument</a><br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Event.html" title="enum wayland_client::protocol::wl_pointer::Event">Event</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt;</code><a class='srclink' href='../../../src/wayland_client/home/mrh/source/Trac3r-rust/target/debug/build/wayland-client-893466244f089367/out/wayland_c_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Construct a message of this group from its C representation</p>
</div><h4 id='method.as_raw_c_in' class="method hidden"><code id='as_raw_c_in.v'>fn <a href='../../../wayland_client/trait.MessageGroup.html#tymethod.as_raw_c_in' class='fnname'>as_raw_c_in</a>&lt;F, T&gt;(self, f: F) -&gt; T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [</a><a class="union" href="../../../wayland_client/sys/common/union.wl_argument.html" title="union wayland_client::sys::common::wl_argument">wl_argument</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -&gt; T,&nbsp;</span></code><a class='srclink' href='../../../src/wayland_client/home/mrh/source/Trac3r-rust/target/debug/build/wayland-client-893466244f089367/out/wayland_c_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Build a C representation of this message <a href="../../../wayland_client/trait.MessageGroup.html#tymethod.as_raw_c_in">Read more</a></p>
</div></div></div><h2 id='synthetic-implementations' class='small-section-header'>Auto Trait Implementations<a href='#synthetic-implementations' class='anchor'></a></h2><div id='synthetic-implementations-list'><h3 id='impl-Send' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Event.html" title="enum wayland_client::protocol::wl_pointer::Event">Event</a></code><a href='#impl-Send' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Unpin' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Event.html" title="enum wayland_client::protocol::wl_pointer::Event">Event</a></code><a href='#impl-Unpin' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Event.html" title="enum wayland_client::protocol::wl_pointer::Event">Event</a></code><a href='#impl-Sync' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-UnwindSafe' class='impl'><code class='in-band'>impl !<a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Event.html" title="enum wayland_client::protocol::wl_pointer::Event">Event</a></code><a href='#impl-UnwindSafe' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-RefUnwindSafe' class='impl'><code class='in-band'>impl !<a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="../../../wayland_client/protocol/wl_pointer/enum.Event.html" title="enum wayland_client::protocol::wl_pointer::Event">Event</a></code><a href='#impl-RefUnwindSafe' class='anchor'></a></h3><div class='impl-items'></div></div><h2 id='blanket-implementations' class='small-section-header'>Blanket Implementations<a href='#blanket-implementations' class='anchor'></a></h2><div id='blanket-implementations-list'><h3 id='impl-Into%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-Into%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#544-549' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.into' class="method hidden"><code id='into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into' class='fnname'>into</a>(self) -&gt; U</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#546-548' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-From%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</code><a href='#impl-From%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#553-555' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from' class="method hidden"><code id='from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(t: T) -&gt; T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#554' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-TryFrom%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-TryFrom%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#572-578' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error' class="type"><code id='Error.t'>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error' class="type">Error</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4 id='method.try_from' class="method hidden"><code id='try_from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#tymethod.try_from' class='fnname'>try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#575-577' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-TryInto%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-TryInto%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#560-567' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error-1' class="type"><code id='Error.t-1'>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error' class="type">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4 id='method.try_into' class="method hidden"><code id='try_into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#tymethod.try_into' class='fnname'>try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#564-566' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-BorrowMut%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-BorrowMut%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#218-220' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow_mut' class="method hidden"><code id='borrow_mut.v'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut' class='fnname'>borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut </a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#219' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
</div></div><h3 id='impl-Borrow%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-Borrow%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#213-215' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow' class="method hidden"><code id='borrow.v'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow' class='fnname'>borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#214' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
</div></div><h3 id='impl-Any' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-Any' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#100-102' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.type_id' class="method hidden"><code id='type_id.v'>fn <a href='https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id' class='fnname'>type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#101' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></div></div></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "wayland_client";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>