mirror of
https://gitlab.freedesktop.org/wayland/wayland.git
synced 2026-03-31 07:11:27 -04:00
doc: add frozen=true interface attribute
This is useful for scanners that use knowledge of the object creation hierarchy such as zig-wayland [1]. Currently zig-wayland uses a hardcoded list of frozen interfaces. [1]: https://codeberg.org/ifreund/zig-wayland Signed-off-by: Isaac Freund <mail@isaacfreund.com>
This commit is contained in:
parent
4d13366fcc
commit
a58bcd7481
3 changed files with 14 additions and 3 deletions
|
|
@ -140,7 +140,8 @@ usage of the interface.
|
||||||
the interfaces part of the same interface ancestry tree. The exception to
|
the interfaces part of the same interface ancestry tree. The exception to
|
||||||
this rule are interfaces which are forever stuck to version 1, which is
|
this rule are interfaces which are forever stuck to version 1, which is
|
||||||
usually caused by having multiple parent interfaces with independent
|
usually caused by having multiple parent interfaces with independent
|
||||||
ancestor global interfaces.
|
ancestor global interfaces. In this case, the `frozen="true"` attribute
|
||||||
|
described below should be used.
|
||||||
|
|
||||||
A protocol object may have any defined version of the interface. The version
|
A protocol object may have any defined version of the interface. The version
|
||||||
of the object is determined at runtime either by inheritance from another
|
of the object is determined at runtime either by inheritance from another
|
||||||
|
|
@ -152,6 +153,15 @@ usage of the interface.
|
||||||
thoroughly updated as required. In such cases the object shall function as
|
thoroughly updated as required. In such cases the object shall function as
|
||||||
with the highest defined interface version.
|
with the highest defined interface version.
|
||||||
|
|
||||||
|
**Optional attributes**
|
||||||
|
|
||||||
|
`frozen`="`true`"
|
||||||
|
: The interface is frozen and forever stuck at version 1.
|
||||||
|
|
||||||
|
This attribute should be applied to interfaces that have multiple parent
|
||||||
|
interfaces with independent ancestor global interfaces, for example
|
||||||
|
`wl_buffer` and `wl_callback`.
|
||||||
|
|
||||||
### request
|
### request
|
||||||
|
|
||||||
Parent elements: interface
|
Parent elements: interface
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@
|
||||||
<!ELEMENT interface (description?,(request|event|enum)+)>
|
<!ELEMENT interface (description?,(request|event|enum)+)>
|
||||||
<!ATTLIST interface name CDATA #REQUIRED>
|
<!ATTLIST interface name CDATA #REQUIRED>
|
||||||
<!ATTLIST interface version CDATA #REQUIRED>
|
<!ATTLIST interface version CDATA #REQUIRED>
|
||||||
|
<!ATTLIST interface frozen CDATA #IMPLIED>
|
||||||
<!ELEMENT request (description?,arg*)>
|
<!ELEMENT request (description?,arg*)>
|
||||||
<!ATTLIST request name CDATA #REQUIRED>
|
<!ATTLIST request name CDATA #REQUIRED>
|
||||||
<!ATTLIST request type CDATA #IMPLIED>
|
<!ATTLIST request type CDATA #IMPLIED>
|
||||||
|
|
|
||||||
|
|
@ -173,7 +173,7 @@
|
||||||
</event>
|
</event>
|
||||||
</interface>
|
</interface>
|
||||||
|
|
||||||
<interface name="wl_callback" version="1">
|
<interface name="wl_callback" version="1" frozen="true">
|
||||||
<description summary="callback object">
|
<description summary="callback object">
|
||||||
Clients can handle the 'done' event to get notified when
|
Clients can handle the 'done' event to get notified when
|
||||||
the related request is done.
|
the related request is done.
|
||||||
|
|
@ -503,7 +503,7 @@
|
||||||
</request>
|
</request>
|
||||||
</interface>
|
</interface>
|
||||||
|
|
||||||
<interface name="wl_buffer" version="1">
|
<interface name="wl_buffer" version="1" frozen="true">
|
||||||
<description summary="content for a wl_surface">
|
<description summary="content for a wl_surface">
|
||||||
A buffer provides the content for a wl_surface. Buffers are
|
A buffer provides the content for a wl_surface. Buffers are
|
||||||
created through factory interfaces such as wl_shm, wp_linux_buffer_params
|
created through factory interfaces such as wl_shm, wp_linux_buffer_params
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue