1
- protocol _AnyJSValueCodable : JSValueConvertible { }
1
+ protocol _AnyJSValueConvertible : JSValueConvertible { }
2
2
3
- public struct AnyJSValueCodable : JSValueCodable , ExpressibleByNilLiteral {
4
- public static let void = AnyJSValueCodable . construct ( from: . undefined)
3
+ public struct AnyJSValueConvertible : JSValueCodable , ExpressibleByNilLiteral {
4
+ public static let void = AnyJSValueConvertible . construct ( from: . undefined)
5
5
6
- private struct Box < T: JSValueConvertible > : _AnyJSValueCodable {
6
+ private struct Box < T: JSValueConvertible > : _AnyJSValueConvertible {
7
7
let value : T
8
8
9
9
func jsValue( ) -> JSValue {
10
10
value. jsValue ( )
11
11
}
12
12
}
13
13
14
- private struct ConcreteBox : _AnyJSValueCodable {
14
+ private struct ConcreteBox : _AnyJSValueConvertible {
15
15
let value : JSValue
16
16
17
17
func jsValue( ) -> JSValue {
18
18
return value
19
19
}
20
20
}
21
21
22
- private let value : _AnyJSValueCodable
22
+ private let value : _AnyJSValueConvertible
23
23
24
24
public init < T> ( _ value: T ) where T: JSValueConvertible {
25
25
self . value = Box ( value: value)
26
26
}
27
- private init ( boxed value: _AnyJSValueCodable ) {
27
+ private init ( boxed value: _AnyJSValueConvertible ) {
28
28
self . value = value
29
29
}
30
30
31
- public static func construct( from value: JSValue ) -> AnyJSValueCodable ? {
31
+ public static func construct( from value: JSValue ) -> AnyJSValueConvertible ? {
32
32
self . init ( boxed: ConcreteBox ( value: value) )
33
33
}
34
34
@@ -39,19 +39,4 @@ public struct AnyJSValueCodable: JSValueCodable, ExpressibleByNilLiteral {
39
39
public func jsValue( ) -> JSValue {
40
40
value. jsValue ( )
41
41
}
42
-
43
- public func fromJSValue< Type: JSValueConstructible > ( ) -> Type ? {
44
- self . jsValue ( ) . fromJSValue ( )
45
- }
46
- }
47
-
48
- public func staticCast< Type: JSBridgedType > ( _ ref: JSBridgedType ) -> Type ? {
49
- return Type ( from: ref. value)
50
- }
51
-
52
- public func dynamicCast< Type: JSBridgedClass > ( _ ref: JSBridgedClass ) -> Type ? {
53
- guard ref. jsObject. isInstanceOf ( Type . constructor) else {
54
- return nil
55
- }
56
- return staticCast ( ref)
57
42
}
0 commit comments