Skip to content

Commit e238509

Browse files
committed
Emit castng helpers
1 parent 4c2eab4 commit e238509

File tree

146 files changed

+408
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

146 files changed

+408
-0
lines changed

src/CSSFontLoadingAPI/FontFaceSet.res

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
open EventAPI
22
open CSSFontLoadingAPI
33

4+
external asEventTarget: fontFaceSet => eventTarget = "%identity"
45
/**
56
Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.
67

src/CanvasAPI/OffscreenCanvas.res

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ open FileAPI
1010
@new
1111
external make: (~width: int, ~height: int) => offscreenCanvas = "OffscreenCanvas"
1212

13+
external asEventTarget: offscreenCanvas => eventTarget = "%identity"
1314
/**
1415
Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.
1516

src/ChannelMessagingAPI/MessagePort.res

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ open EventAPI
22
open ChannelMessagingAPI
33
open Prelude
44

5+
external asEventTarget: messagePort => eventTarget = "%identity"
56
/**
67
Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.
78

src/ClipboardAPI/Clipboard.res

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
open EventAPI
22
open ClipboardAPI
33

4+
external asEventTarget: clipboard => eventTarget = "%identity"
45
/**
56
Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.
67

src/DOMAPI/Animation.res

+1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ open DOMAPI
88
external make: (~effect: animationEffect=?, ~timeline: animationTimeline=?) => animation =
99
"Animation"
1010

11+
external asEventTarget: animation => eventTarget = "%identity"
1112
/**
1213
Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.
1314

src/DOMAPI/CSSStyleSheet.res

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ open DOMAPI
66
@new
77
external make: (~options: cssStyleSheetInit=?) => cssStyleSheet = "CSSStyleSheet"
88

9+
external asStyleSheet: cssStyleSheet => styleSheet = "%identity"
910
/**
1011
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/insertRule)
1112
*/

src/DOMAPI/CharacterData.res

+2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
open DOMAPI
22
open EventAPI
33

4+
external asNode: characterData => node = "%identity"
5+
external asEventTarget: characterData => eventTarget = "%identity"
46
/**
57
Inserts nodes just before node, while replacing strings in nodes with equivalent Text nodes.
68

src/DOMAPI/Comment.res

+3
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@ open EventAPI
77
@new
88
external make: (~data: string=?) => comment = "Comment"
99

10+
external asCharacterData: comment => characterData = "%identity"
11+
external asNode: comment => node = "%identity"
12+
external asEventTarget: comment => eventTarget = "%identity"
1013
/**
1114
Inserts nodes just before node, while replacing strings in nodes with equivalent Text nodes.
1215

src/DOMAPI/DOMMatrix.res

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ external make: (~init: string=?) => domMatrix = "DOMMatrix"
1313
@new
1414
external make2: (~init: array<float>=?) => domMatrix = "DOMMatrix"
1515

16+
external asDOMMatrixReadOnly: domMatrix => domMatrixReadOnly = "%identity"
1617
@scope("DOMMatrix")
1718
external fromMatrix: (~other: domMatrixInit=?) => domMatrixReadOnly = "fromMatrix"
1819

src/DOMAPI/DOMPoint.res

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ open DOMAPI
66
@new
77
external make: (~x: float=?, ~y: float=?, ~z: float=?, ~w: float=?) => domPoint = "DOMPoint"
88

9+
external asDOMPointReadOnly: domPoint => domPointReadOnly = "%identity"
910
/**
1011
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint_static)
1112
*/

src/DOMAPI/DOMRect.res

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ open DOMAPI
66
@new
77
external make: (~x: float=?, ~y: float=?, ~width: float=?, ~height: float=?) => domRect = "DOMRect"
88

9+
external asDOMRectReadOnly: domRect => domRectReadOnly = "%identity"
910
/**
1011
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect_static)
1112
*/

src/DOMAPI/Document.res

+2
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ open ViewTransitionsAPI
88
@new
99
external make: unit => document = "Document"
1010

11+
external asNode: document => node = "%identity"
12+
external asEventTarget: document => eventTarget = "%identity"
1113
/**
1214
Returns the first element within node's descendants whose ID is elementId.
1315
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/Document/getElementById)

src/DOMAPI/DocumentFragment.res

+2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ open EventAPI
77
@new
88
external make: unit => documentFragment = "DocumentFragment"
99

10+
external asNode: documentFragment => node = "%identity"
11+
external asEventTarget: documentFragment => eventTarget = "%identity"
1012
/**
1113
Returns the first element within node's descendants whose ID is elementId.
1214
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/Document/getElementById)

src/DOMAPI/DocumentTimeline.res

+2
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,5 @@ open DOMAPI
55
*/
66
@new
77
external make: (~options: documentTimelineOptions=?) => documentTimeline = "DocumentTimeline"
8+
9+
external asAnimationTimeline: documentTimeline => animationTimeline = "%identity"

src/DOMAPI/Element.res

+2
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asNode: element => node = "%identity"
6+
external asEventTarget: element => eventTarget = "%identity"
57
/**
68
Inserts nodes before the first child of node, while replacing strings in nodes with equivalent Text nodes.
79

src/DOMAPI/HTMLAnchorElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlAnchorElement => htmlElement = "%identity"
6+
external asElement: htmlAnchorElement => element = "%identity"
7+
external asNode: htmlAnchorElement => node = "%identity"
8+
external asEventTarget: htmlAnchorElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLAreaElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlAreaElement => htmlElement = "%identity"
6+
external asElement: htmlAreaElement => element = "%identity"
7+
external asNode: htmlAreaElement => node = "%identity"
8+
external asEventTarget: htmlAreaElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLAudioElement.res

+5
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@ open EventAPI
44
open WebVTTAPI
55
open EncryptedMediaExtensionsAPI
66

7+
external asHTMLMediaElement: htmlAudioElement => htmlMediaElement = "%identity"
8+
external asHTMLElement: htmlAudioElement => htmlElement = "%identity"
9+
external asElement: htmlAudioElement => element = "%identity"
10+
external asNode: htmlAudioElement => node = "%identity"
11+
external asEventTarget: htmlAudioElement => eventTarget = "%identity"
712
/**
813
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
914
*/

src/DOMAPI/HTMLBRElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlbrElement => htmlElement = "%identity"
6+
external asElement: htmlbrElement => element = "%identity"
7+
external asNode: htmlbrElement => node = "%identity"
8+
external asEventTarget: htmlbrElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLBaseElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlBaseElement => htmlElement = "%identity"
6+
external asElement: htmlBaseElement => element = "%identity"
7+
external asNode: htmlBaseElement => node = "%identity"
8+
external asEventTarget: htmlBaseElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLBodyElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlBodyElement => htmlElement = "%identity"
6+
external asElement: htmlBodyElement => element = "%identity"
7+
external asNode: htmlBodyElement => node = "%identity"
8+
external asEventTarget: htmlBodyElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLButtonElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlButtonElement => htmlElement = "%identity"
6+
external asElement: htmlButtonElement => element = "%identity"
7+
external asNode: htmlButtonElement => node = "%identity"
8+
external asEventTarget: htmlButtonElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLCanvasElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@ open EventAPI
44
open CanvasAPI
55
open MediaCaptureAndStreamsAPI
66

7+
external asHTMLElement: htmlCanvasElement => htmlElement = "%identity"
8+
external asElement: htmlCanvasElement => element = "%identity"
9+
external asNode: htmlCanvasElement => node = "%identity"
10+
external asEventTarget: htmlCanvasElement => eventTarget = "%identity"
711
/**
812
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
913
*/

src/DOMAPI/HTMLCollectionOf.res

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
open DOMAPI
22

3+
external asHTMLCollection: htmlCollectionOf<'t> => htmlCollection = "%identity"
34
/**
45
Retrieves an object from various collections.
56
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLCollection/item)

src/DOMAPI/HTMLDListElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmldListElement => htmlElement = "%identity"
6+
external asElement: htmldListElement => element = "%identity"
7+
external asNode: htmldListElement => node = "%identity"
8+
external asEventTarget: htmldListElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLDataElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlDataElement => htmlElement = "%identity"
6+
external asElement: htmlDataElement => element = "%identity"
7+
external asNode: htmlDataElement => node = "%identity"
8+
external asEventTarget: htmlDataElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLDataListElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlDataListElement => htmlElement = "%identity"
6+
external asElement: htmlDataListElement => element = "%identity"
7+
external asNode: htmlDataListElement => node = "%identity"
8+
external asEventTarget: htmlDataListElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLDialogElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlDialogElement => htmlElement = "%identity"
6+
external asElement: htmlDialogElement => element = "%identity"
7+
external asNode: htmlDialogElement => node = "%identity"
8+
external asEventTarget: htmlDialogElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLDivElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlDivElement => htmlElement = "%identity"
6+
external asElement: htmlDivElement => element = "%identity"
7+
external asNode: htmlDivElement => node = "%identity"
8+
external asEventTarget: htmlDivElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLElement.res

+3
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asElement: htmlElement => element = "%identity"
6+
external asNode: htmlElement => node = "%identity"
7+
external asEventTarget: htmlElement => eventTarget = "%identity"
58
/**
69
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
710
*/

src/DOMAPI/HTMLEmbedElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlEmbedElement => htmlElement = "%identity"
6+
external asElement: htmlEmbedElement => element = "%identity"
7+
external asNode: htmlEmbedElement => node = "%identity"
8+
external asEventTarget: htmlEmbedElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLFieldSetElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlFieldSetElement => htmlElement = "%identity"
6+
external asElement: htmlFieldSetElement => element = "%identity"
7+
external asNode: htmlFieldSetElement => node = "%identity"
8+
external asEventTarget: htmlFieldSetElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLFormControlsCollection.res

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
open DOMAPI
22

3+
external asHTMLCollection: htmlFormControlsCollection => htmlCollection = "%identity"
34
/**
45
Retrieves an object from various collections.
56
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLCollection/item)

src/DOMAPI/HTMLFormElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlFormElement => htmlElement = "%identity"
6+
external asElement: htmlFormElement => element = "%identity"
7+
external asNode: htmlFormElement => node = "%identity"
8+
external asEventTarget: htmlFormElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLFrameSetElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlFrameSetElement => htmlElement = "%identity"
6+
external asElement: htmlFrameSetElement => element = "%identity"
7+
external asNode: htmlFrameSetElement => node = "%identity"
8+
external asEventTarget: htmlFrameSetElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLHRElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlhrElement => htmlElement = "%identity"
6+
external asElement: htmlhrElement => element = "%identity"
7+
external asNode: htmlhrElement => node = "%identity"
8+
external asEventTarget: htmlhrElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLHeadElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlHeadElement => htmlElement = "%identity"
6+
external asElement: htmlHeadElement => element = "%identity"
7+
external asNode: htmlHeadElement => node = "%identity"
8+
external asEventTarget: htmlHeadElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLHeadingElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlHeadingElement => htmlElement = "%identity"
6+
external asElement: htmlHeadingElement => element = "%identity"
7+
external asNode: htmlHeadingElement => node = "%identity"
8+
external asEventTarget: htmlHeadingElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLHtmlElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmlHtmlElement => htmlElement = "%identity"
6+
external asElement: htmlHtmlElement => element = "%identity"
7+
external asNode: htmlHtmlElement => node = "%identity"
8+
external asEventTarget: htmlHtmlElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

src/DOMAPI/HTMLIFrameElement.res

+4
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ open DOMAPI
22
open Prelude
33
open EventAPI
44

5+
external asHTMLElement: htmliFrameElement => htmlElement = "%identity"
6+
external asElement: htmliFrameElement => element = "%identity"
7+
external asNode: htmliFrameElement => node = "%identity"
8+
external asEventTarget: htmliFrameElement => eventTarget = "%identity"
59
/**
610
[Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus)
711
*/

0 commit comments

Comments
 (0)