@@ -6,7 +6,6 @@ open System.Collections.Generic
6
6
open System.IO
7
7
open System.Text
8
8
open System.Text .RegularExpressions
9
- open System.Web
10
9
open Microsoft.FSharp .Reflection
11
10
open FSharp.Data
12
11
@@ -63,13 +62,13 @@ module Types =
63
62
let output = StringBuilder()
64
63
let stack = StringBuilder()
65
64
let mutable curTabCount = 0
66
- member this .GetCurIndent() = String.replicate curTabCount " "
65
+ member __ .GetCurIndent() = String.replicate curTabCount " "
67
66
68
- member this .Print content = Printf.kprintf ( output.Append >> ignore) content
67
+ member __ .Print content = Printf.kprintf ( output.Append >> ignore) content
69
68
70
- member this .PrintToStack content = Printf.kprintf ( stack.Append >> ignore) content
69
+ member __ .PrintToStack content = Printf.kprintf ( stack.Append >> ignore) content
71
70
72
- member this .ClearStack () = stack.Clear() |> ignore
71
+ member __ .ClearStack () = stack.Clear() |> ignore
73
72
74
73
member this.PrintStackContent () = this.Print " %s " ( stack.ToString())
75
74
@@ -79,22 +78,22 @@ module Types =
79
78
member this.PrintlToStack content =
80
79
Printf.kprintf ( fun s -> stack.Append( " \r\n " + this.GetCurIndent() + s) |> ignore) content
81
80
82
- member this .StackIsEmpty () = stack.Length = 0
81
+ member __ .StackIsEmpty () = stack.Length = 0
83
82
84
- member this .IncreaseIndent() = curTabCount <- curTabCount + 1
83
+ member __ .IncreaseIndent() = curTabCount <- curTabCount + 1
85
84
86
- member this .SetIndent indentNum = curTabCount <- indentNum
85
+ member __ .SetIndent indentNum = curTabCount <- indentNum
87
86
88
- member this .DecreaseIndent() = curTabCount <- Math.Max( curTabCount - 1 , 0 )
87
+ member __ .DecreaseIndent() = curTabCount <- Math.Max( curTabCount - 1 , 0 )
89
88
90
- member this .ResetIndent() = curTabCount <- 0
89
+ member __ .ResetIndent() = curTabCount <- 0
91
90
92
91
member this.PrintWithAddedIndent content =
93
92
Printf.kprintf ( fun s -> output.Append( " \r\n " + this.GetCurIndent() + " " + s) |> ignore) content
94
93
95
- member this .GetResult() = output.ToString()
94
+ member __ .GetResult() = output.ToString()
96
95
97
- member this .Clear() = output.Clear() |> ignore
96
+ member __ .Clear() = output.Clear() |> ignore
98
97
99
98
member this.Reset () =
100
99
this.Clear()
@@ -244,7 +243,6 @@ module CommentJson =
244
243
| _ -> None
245
244
246
245
module Data =
247
- open Helpers
248
246
open Types
249
247
250
248
// Used to decide if a member should be emitted given its static property and
@@ -389,12 +387,6 @@ module Data =
389
387
( e.Name, eType))
390
388
|> Map.ofList
391
389
392
- let eNameToETypeWithoutCase =
393
- eNameToEType
394
- |> Map.toList
395
- |> List.map ( fun ( k , v ) -> ( k.ToLower(), v))
396
- |> Map.ofList
397
-
398
390
let getEventTypeInInterface eName ( i : Browser.Interface ) =
399
391
match i.Name, eName with
400
392
| " IDBDatabase" , " abort"
@@ -440,8 +432,7 @@ module Data =
440
432
yield ! [ for e in i.Elements do
441
433
yield ( e.Name, i.Name) ] ]
442
434
|> Seq.groupBy fst
443
- |> Seq.map ( fun ( key , group ) -> ( key, Seq.map snd group))
444
- |> Seq.map ( fun ( key , group ) ->
435
+ |> Seq.map (( fun ( key , group ) -> ( key, Seq.map snd group)) >> fun ( key , group ) ->
445
436
key,
446
437
match Seq.length group with
447
438
| 1 -> Seq.head group
@@ -500,7 +491,7 @@ module Data =
500
491
/// 2. the event name that it handles: "ready", "SVGAbort" etc.
501
492
/// And they don't NOT just differ by an "on" prefix!
502
493
let iNameToEhList =
503
- let getEventTypeFromHandler ( p : Browser.Property ) ( i : Browser.Interface ) =
494
+ let getEventTypeFromHandler ( p : Browser.Property ) =
504
495
let eType =
505
496
// Check the "event-handler" attribute of the event handler property,
506
497
// which is the corresponding event name
@@ -525,7 +516,7 @@ module Data =
525
516
ps.Properties
526
517
|> Array.choose ( fun p' ->
527
518
if p'.EventHandler.IsSome then
528
- Some({ Name = p'.Name; EventName = p'.EventHandler.Value; EventType = getEventTypeFromHandler p' i })
519
+ Some({ Name = p'.Name; EventName = p'.EventHandler.Value; EventType = getEventTypeFromHandler p' })
529
520
else None)
530
521
|> List.ofArray
531
522
| None -> []
@@ -562,14 +553,6 @@ module Data =
562
553
|> Array.map ( fun i -> ( i.Name, getParentsWithEventHandler i))
563
554
|> Map.ofArray
564
555
565
- /// Event handler name to event type map
566
- let ehNameToEType =
567
- let t =
568
- [ for KeyValue(_, ehList) in iNameToEhList do
569
- yield ! ( List.map ( fun eh -> ( eh.Name, eh.EventType)) ehList) ]
570
- |> List.distinct
571
- t |> Map.ofList
572
-
573
556
let GetGlobalPollutor flavor =
574
557
match flavor with
575
558
| Flavor.Web | Flavor.All -> browser.Interfaces |> Array.tryFind ( fun i -> i.PrimaryGlobal.IsSome)
@@ -616,7 +599,7 @@ module Data =
616
599
match f with
617
600
| Method m -> m.Nullable.IsSome
618
601
| Ctor _ -> false
619
- | CallBackFun cb -> true
602
+ | CallBackFun _ -> true
620
603
621
604
// Some params have the type of "(DOMString or DOMString [] or Number)"
622
605
// we need to transform it into [“DOMString", "DOMString []", "Number"]
@@ -1067,7 +1050,7 @@ module Emit =
1067
1050
| Some i' -> EmitAllMembers flavor i'
1068
1051
| _ -> ()
1069
1052
1070
- let EmitEventHandlers ( flavor : Flavor ) ( prefix : string ) ( i : Browser.Interface ) =
1053
+ let EmitEventHandlers ( prefix : string ) ( i : Browser.Interface ) =
1071
1054
let getOptionsType ( addOrRemove : string ) =
1072
1055
if addOrRemove = " add" then " AddEventListenerOptions" else " EventListenerOptions"
1073
1056
@@ -1256,7 +1239,7 @@ module Emit =
1256
1239
|> Array.filter ( matchInterface i.Name)
1257
1240
|> Array.iter emitIndexerFromJson
1258
1241
1259
- let EmitInterfaceEventMap flavor ( i : Browser.Interface ) =
1242
+ let EmitInterfaceEventMap ( i : Browser.Interface ) =
1260
1243
let emitInterfaceEventMapEntry ( eHandler : EventHandler ) =
1261
1244
let eventType =
1262
1245
getEventTypeInInterface eHandler.EventName i
@@ -1277,7 +1260,7 @@ module Emit =
1277
1260
1278
1261
let EmitInterface flavor ( i : Browser.Interface ) =
1279
1262
Pt.ClearStack()
1280
- EmitInterfaceEventMap flavor i
1263
+ EmitInterfaceEventMap i
1281
1264
1282
1265
Pt.ResetIndent()
1283
1266
EmitInterfaceDeclaration i
@@ -1286,7 +1269,7 @@ module Emit =
1286
1269
let prefix = " "
1287
1270
EmitMembers flavor prefix EmitScope.InstanceOnly i
1288
1271
EmitConstants i
1289
- EmitEventHandlers flavor prefix i
1272
+ EmitEventHandlers prefix i
1290
1273
EmitIndexers EmitScope.InstanceOnly i
1291
1274
1292
1275
Pt.DecreaseIndent()
@@ -1344,7 +1327,7 @@ module Emit =
1344
1327
1345
1328
let prefix = " "
1346
1329
EmitMembers flavor prefix EmitScope.InstanceOnly i
1347
- EmitEventHandlers flavor prefix i
1330
+ EmitEventHandlers prefix i
1348
1331
EmitIndexers EmitScope.InstanceOnly i
1349
1332
1350
1333
Pt.DecreaseIndent()
@@ -1367,7 +1350,7 @@ module Emit =
1367
1350
let prefix = " "
1368
1351
EmitMembers flavor prefix EmitScope.StaticOnly i
1369
1352
EmitConstants i
1370
- EmitEventHandlers flavor prefix i
1353
+ EmitEventHandlers prefix i
1371
1354
EmitIndexers EmitScope.StaticOnly i
1372
1355
emitAddedConstructor ()
1373
1356
Pt.DecreaseIndent()
@@ -1436,7 +1419,7 @@ module Emit =
1436
1419
1437
1420
let EmitAddedInterface ( ai : InputJsonType.Root ) =
1438
1421
match ai.Extends with
1439
- | Some e -> Pt.Printl " interface %s extends %s {" ai.Name.Value ai.Extends.Value
1422
+ | Some e -> Pt.Printl " interface %s extends %s {" ai.Name.Value e
1440
1423
| None -> Pt.Printl " interface %s {" ai.Name.Value
1441
1424
1442
1425
let emitProperty ( p : InputJsonType.Property ) =
@@ -1521,7 +1504,7 @@ module Emit =
1521
1504
match GetGlobalPollutor flavor with
1522
1505
| Some gp ->
1523
1506
EmitAllMembers flavor gp
1524
- EmitEventHandlers flavor " declare var " gp
1507
+ EmitEventHandlers " declare var " gp
1525
1508
| _ -> ()
1526
1509
1527
1510
EmitTypeDefs flavor
0 commit comments