script: Include constructors and static methods in generated DOM traits (#33665)

* Add all constructors, special operations, and static methods to generated DOM interface traits.

Signed-off-by: Josh Matthews <josh@joshmatthews.net>

* Move all constructors and static methods defined in bare impl blocks inside FooMethods trait impls.

Signed-off-by: Josh Matthews <josh@joshmatthews.net>

* Add missing doc links.

Signed-off-by: Josh Matthews <josh@joshmatthews.net>

---------

Signed-off-by: Josh Matthews <josh@joshmatthews.net>
This commit is contained in:
Josh Matthews 2024-10-07 21:51:58 -04:00 committed by GitHub
parent 946fa9cdee
commit 7d931e673a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
133 changed files with 1479 additions and 1438 deletions

View file

@ -37,9 +37,8 @@ pub struct TrackEvent {
track: Option<MediaTrack>,
}
#[allow(non_snake_case)]
impl TrackEvent {
#[allow(crown::unrooted_must_root)]
#[allow(crown::unrooted_must_root, non_snake_case)]
fn new_inherited(track: &Option<VideoTrackOrAudioTrackOrTextTrack>) -> TrackEvent {
let media_track = match track {
Some(VideoTrackOrAudioTrackOrTextTrack::VideoTrack(VideoTrack)) => {
@ -99,8 +98,11 @@ impl TrackEvent {
}
te
}
}
pub fn Constructor(
impl TrackEventMethods for TrackEvent {
// https://html.spec.whatwg.org/multipage/#trackevent
fn Constructor(
window: &Window,
proto: Option<HandleObject>,
can_gc: CanGc,
@ -117,11 +119,9 @@ impl TrackEvent {
can_gc,
))
}
}
#[allow(non_snake_case)]
impl TrackEventMethods for TrackEvent {
// https://html.spec.whatwg.org/multipage/#dom-trackevent-track
#[allow(non_snake_case)]
fn GetTrack(&self) -> Option<VideoTrackOrAudioTrackOrTextTrack> {
match &self.track {
Some(MediaTrack::Video(VideoTrack)) => Some(