starlight-fsharp-oracle 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Extensions/StringBuilder.js +2 -5
- package/dist/Extensions/TextNode.js +29 -54
- package/dist/FSharp.Oracle.Schema/Schema.js +113 -218
- package/dist/Generate.js +33 -63
- package/dist/Helpers.js +1 -2
- package/dist/Plugin.js +17 -31
- package/dist/Render/Documentation.js +1 -2
- package/dist/Render/Entries.js +29 -34
- package/dist/Render/Pages.js +10 -19
- package/dist/Render/Primitives.js +19 -32
- package/dist/Themes.js +3 -5
- package/dist/fable_modules/Fable.Promise.3.2.0/AsyncIterable.fs +57 -0
- package/dist/fable_modules/Fable.Promise.3.2.0/AsyncIterable.fs.js +105 -0
- package/dist/fable_modules/Fable.Promise.3.2.0/Fable.Promise.fableproj +20 -0
- package/dist/fable_modules/Fable.Promise.3.2.0/Promise.fs +766 -0
- package/dist/fable_modules/Fable.Promise.3.2.0/Promise.fs.js +232 -0
- package/dist/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs +31 -0
- package/dist/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs.js +20 -0
- package/dist/fable_modules/Thoth.Json.Core.0.9.0/Decode.fs +1592 -0
- package/dist/fable_modules/Thoth.Json.Core.0.9.0/Decode.fs.js +1417 -0
- package/dist/fable_modules/Thoth.Json.Core.0.9.0/DecoderCE.fs +106 -0
- package/dist/fable_modules/Thoth.Json.Core.0.9.0/DecoderCE.fs.js +63 -0
- package/dist/fable_modules/Thoth.Json.Core.0.9.0/Encode.fs +380 -0
- package/dist/fable_modules/Thoth.Json.Core.0.9.0/Encode.fs.js +289 -0
- package/dist/fable_modules/Thoth.Json.Core.0.9.0/Thoth.Json.Core.fableproj +37 -0
- package/dist/fable_modules/Thoth.Json.Core.0.9.0/Types.fs +76 -0
- package/dist/fable_modules/Thoth.Json.Core.0.9.0/Types.fs.js +37 -0
- package/dist/fable_modules/Thoth.Json.Core.Auto.0.1.0/Casing.fs +113 -0
- package/dist/fable_modules/Thoth.Json.Core.Auto.0.1.0/Casing.fs.js +173 -0
- package/dist/fable_modules/Thoth.Json.Core.Auto.0.1.0/Decode.fs +1153 -0
- package/dist/fable_modules/Thoth.Json.Core.Auto.0.1.0/Decode.fs.js +622 -0
- package/dist/fable_modules/Thoth.Json.Core.Auto.0.1.0/Domain.fs +91 -0
- package/dist/fable_modules/Thoth.Json.Core.Auto.0.1.0/Domain.fs.js +103 -0
- package/dist/fable_modules/Thoth.Json.Core.Auto.0.1.0/Encode.fs +893 -0
- package/dist/fable_modules/Thoth.Json.Core.Auto.0.1.0/Encode.fs.js +836 -0
- package/dist/fable_modules/Thoth.Json.Core.Auto.0.1.0/Prelude.fs +435 -0
- package/dist/fable_modules/Thoth.Json.Core.Auto.0.1.0/Prelude.fs.js +389 -0
- package/dist/fable_modules/Thoth.Json.Core.Auto.0.1.0/Thoth.Json.Core.Auto.fableproj +43 -0
- package/dist/fable_modules/Thoth.Json.JavaScript.0.5.0/Decode.fs +88 -0
- package/dist/fable_modules/Thoth.Json.JavaScript.0.5.0/Decode.fs.js +102 -0
- package/dist/fable_modules/Thoth.Json.JavaScript.0.5.0/Encode.fs +40 -0
- package/dist/fable_modules/Thoth.Json.JavaScript.0.5.0/Encode.fs.js +59 -0
- package/dist/fable_modules/Thoth.Json.JavaScript.0.5.0/Thoth.Json.JavaScript.fableproj +31 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Array.js +1347 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Async.js +134 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/AsyncBuilder.js +183 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/BigInt.js +306 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/BitConverter.js +138 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Boolean.js +22 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/CHANGELOG.md +191 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Char.js +202 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Choice.js +184 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/CollectionUtil.js +182 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/ConditionalWeakTable.js +21 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Date.js +755 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/DateOffset.js +261 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/DateOnly.js +124 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Decimal.js +236 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Double.js +47 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Encoding.js +185 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Event.js +93 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/FSharp.Collections.js +45 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/FSharp.Core.CompilerServices.js +27 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/FSharp.Core.js +156 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Global.js +29 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Guid.js +161 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Int32.js +135 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/List.js +1323 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Long.js +47 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/MailboxProcessor.js +94 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Map.js +1396 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/MapUtil.js +130 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/MutableMap.js +339 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/MutableSet.js +233 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Native.js +14 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Numeric.js +75 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Observable.js +113 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Option.js +104 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/README.md +3 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Random.js +172 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Range.js +45 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Reflection.js +460 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/RegExp.js +141 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Result.js +165 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Seq.js +1409 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Seq2.js +111 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Set.js +1788 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/String.js +649 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/System.Collections.Generic.js +333 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/System.Text.js +168 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/System.js +283 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/TimeOnly.js +122 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/TimeSpan.js +180 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Timer.js +67 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Types.js +198 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Unicode.13.0.0.js +4 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Uri.js +165 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/Util.js +792 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/big.d.ts +338 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/lib/big.js +825 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/package.json +24 -0
- package/dist/fable_modules/fable-library-js.5.0.0-rc.7/quotation.js +618 -0
- package/package.json +4 -5
- package/packages/FSharp.Oracle/XmlDoc.fs +12 -1
- package/packages/FSharp.Oracle/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.fs +3 -0
- package/packages/FSharp.Oracle/obj/Debug/net10.0/FSharp.Oracle.AssemblyInfo.fs +17 -0
- package/packages/FSharp.Oracle/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.fs +3 -0
- package/packages/FSharp.Oracle/obj/Release/net10.0/FSharp.Oracle.AssemblyInfo.fs +17 -0
- package/packages/FSharp.Oracle.Schema/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.fs +3 -0
- package/packages/FSharp.Oracle.Schema/obj/Debug/net10.0/FSharp.Oracle.Schema.AssemblyInfo.fs +17 -0
- package/packages/FSharp.Oracle.Schema/obj/Release/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.fs +3 -0
- package/packages/FSharp.Oracle.Schema/obj/Release/net10.0/FSharp.Oracle.Schema.AssemblyInfo.fs +17 -0
- package/oracle-bin/FSharp.Compiler.Service.dll +0 -0
- package/oracle-bin/FSharp.Core.dll +0 -0
- package/oracle-bin/FSharp.DependencyManager.Nuget.dll +0 -0
- package/oracle-bin/FSharp.Oracle.Schema.dll +0 -0
- package/oracle-bin/FSharp.Oracle.Schema.pdb +0 -0
- package/oracle-bin/FSharp.Oracle.Schema.xml +0 -219
- package/oracle-bin/Fable.Core.dll +0 -0
- package/oracle-bin/Oracle +0 -0
- package/oracle-bin/Oracle.deps.json +0 -280
- package/oracle-bin/Oracle.dll +0 -0
- package/oracle-bin/Oracle.pdb +0 -0
- package/oracle-bin/Oracle.runtimeconfig.json +0 -13
- package/oracle-bin/Oracle.xml +0 -111
- package/oracle-bin/Thoth.Json.Core.Auto.dll +0 -0
- package/oracle-bin/Thoth.Json.Core.dll +0 -0
- package/oracle-bin/Thoth.Json.System.Text.Json.dll +0 -0
- package/oracle-bin/cs/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/cs/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/cs/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/de/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/de/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/de/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/es/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/es/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/es/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/fr/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/fr/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/fr/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/it/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/it/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/it/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/ja/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/ja/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/ja/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/ko/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/ko/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/ko/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/pl/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/pl/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/pl/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/pt-BR/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/pt-BR/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/pt-BR/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/ru/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/ru/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/ru/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/tr/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/tr/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/tr/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/zh-Hans/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/zh-Hans/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/zh-Hans/FSharp.DependencyManager.Nuget.resources.dll +0 -0
- package/oracle-bin/zh-Hant/FSharp.Compiler.Service.resources.dll +0 -0
- package/oracle-bin/zh-Hant/FSharp.Core.resources.dll +0 -0
- package/oracle-bin/zh-Hant/FSharp.DependencyManager.Nuget.resources.dll +0 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
namespace Thoth.Json.Core
|
|
2
|
+
|
|
3
|
+
[<AutoOpen>]
|
|
4
|
+
module DecoderCE =
|
|
5
|
+
|
|
6
|
+
type DecoderBuilder internal () =
|
|
7
|
+
member inline _.Bind(m, f) = Decode.andThen f m
|
|
8
|
+
|
|
9
|
+
member _.BindReturn(m, f) = Decode.map f m
|
|
10
|
+
|
|
11
|
+
member _.Bind2Return(d1, d2, ctor: struct ('a * 'b) -> 't) =
|
|
12
|
+
Decode.map2 (fun a b -> ctor struct (a, b)) d1 d2
|
|
13
|
+
|
|
14
|
+
member _.Bind3Return(d1, d2, d3, ctor: struct ('a * 'b * 'c) -> 't) =
|
|
15
|
+
Decode.map3 (fun a b c -> ctor struct (a, b, c)) d1 d2 d3
|
|
16
|
+
|
|
17
|
+
member _.Bind4Return
|
|
18
|
+
(d1, d2, d3, d4, ctor: struct ('a * 'b * 'c * 'd) -> 't)
|
|
19
|
+
=
|
|
20
|
+
Decode.map4 (fun a b c d -> ctor struct (a, b, c, d)) d1 d2 d3 d4
|
|
21
|
+
|
|
22
|
+
member _.Bind5Return
|
|
23
|
+
(d1, d2, d3, d4, d5, ctor: struct ('a * 'b * 'c * 'd * 'e) -> 't)
|
|
24
|
+
=
|
|
25
|
+
Decode.map5
|
|
26
|
+
(fun a b c d e -> ctor struct (a, b, c, d, e))
|
|
27
|
+
d1
|
|
28
|
+
d2
|
|
29
|
+
d3
|
|
30
|
+
d4
|
|
31
|
+
d5
|
|
32
|
+
|
|
33
|
+
member _.Bind6Return
|
|
34
|
+
(
|
|
35
|
+
d1,
|
|
36
|
+
d2,
|
|
37
|
+
d3,
|
|
38
|
+
d4,
|
|
39
|
+
d5,
|
|
40
|
+
d6,
|
|
41
|
+
ctor: struct ('a * 'b * 'c * 'd * 'e * 'f) -> 't
|
|
42
|
+
)
|
|
43
|
+
=
|
|
44
|
+
Decode.map6
|
|
45
|
+
(fun a b c d e f -> ctor struct (a, b, c, d, e, f))
|
|
46
|
+
d1
|
|
47
|
+
d2
|
|
48
|
+
d3
|
|
49
|
+
d4
|
|
50
|
+
d5
|
|
51
|
+
d6
|
|
52
|
+
|
|
53
|
+
member _.Bind7Return
|
|
54
|
+
(
|
|
55
|
+
d1,
|
|
56
|
+
d2,
|
|
57
|
+
d3,
|
|
58
|
+
d4,
|
|
59
|
+
d5,
|
|
60
|
+
d6,
|
|
61
|
+
d7,
|
|
62
|
+
ctor: struct ('a * 'b * 'c * 'd * 'e * 'f * 'g) -> 't
|
|
63
|
+
)
|
|
64
|
+
=
|
|
65
|
+
Decode.map7
|
|
66
|
+
(fun a b c d e f g -> ctor struct (a, b, c, d, e, f, g))
|
|
67
|
+
d1
|
|
68
|
+
d2
|
|
69
|
+
d3
|
|
70
|
+
d4
|
|
71
|
+
d5
|
|
72
|
+
d6
|
|
73
|
+
d7
|
|
74
|
+
|
|
75
|
+
member _.Bind8Return
|
|
76
|
+
(
|
|
77
|
+
d1,
|
|
78
|
+
d2,
|
|
79
|
+
d3,
|
|
80
|
+
d4,
|
|
81
|
+
d5,
|
|
82
|
+
d6,
|
|
83
|
+
d7,
|
|
84
|
+
d8,
|
|
85
|
+
ctor: struct ('a * 'b * 'c * 'd * 'e * 'f * 'g * 'h) -> 't
|
|
86
|
+
)
|
|
87
|
+
=
|
|
88
|
+
Decode.map8
|
|
89
|
+
(fun a b c d e f g h -> ctor struct (a, b, c, d, e, f, g, h))
|
|
90
|
+
d1
|
|
91
|
+
d2
|
|
92
|
+
d3
|
|
93
|
+
d4
|
|
94
|
+
d5
|
|
95
|
+
d6
|
|
96
|
+
d7
|
|
97
|
+
d8
|
|
98
|
+
|
|
99
|
+
member _.MergeSources(d1, d2) =
|
|
100
|
+
Decode.map2 (fun a b -> struct (a, b)) d1 d2
|
|
101
|
+
|
|
102
|
+
member _.Return(x) = Decode.succeed x
|
|
103
|
+
|
|
104
|
+
member _.ReturnFrom(x: Decoder<'a>) = x
|
|
105
|
+
|
|
106
|
+
let decoder = DecoderBuilder()
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
|
|
2
|
+
import { class_type } from "../fable-library-js.5.0.0-rc.7/Reflection.js";
|
|
3
|
+
import { succeed, map8, map7, map6, map5, map4, map3, map2, map } from "./Decode.fs.js";
|
|
4
|
+
|
|
5
|
+
export class DecoderBuilder {
|
|
6
|
+
constructor() {
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export function DecoderBuilder_$reflection() {
|
|
11
|
+
return class_type("Thoth.Json.Core.DecoderCE.DecoderBuilder", undefined, DecoderBuilder);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export function DecoderBuilder_$ctor() {
|
|
15
|
+
return new DecoderBuilder();
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function DecoderBuilder__BindReturn_6BCFE77E(_, m, f) {
|
|
19
|
+
return map(f, m);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function DecoderBuilder__Bind2Return_Z12312F75(_, d1, d2, ctor) {
|
|
23
|
+
return map2((a, b) => ctor([a, b]), d1, d2);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export function DecoderBuilder__Bind3Return_B877D49(_, d1, d2, d3, ctor) {
|
|
27
|
+
return map3((a, b, c) => ctor([a, b, c]), d1, d2, d3);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export function DecoderBuilder__Bind4Return_Z70E81EB5(_, d1, d2, d3, d4, ctor) {
|
|
31
|
+
return map4((a, b, c, d) => ctor([a, b, c, d]), d1, d2, d3, d4);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export function DecoderBuilder__Bind5Return_1A977209(_, d1, d2, d3, d4, d5, ctor) {
|
|
35
|
+
return map5((a, b, c, d, e) => ctor([a, b, c, d, e]), d1, d2, d3, d4, d5);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export function DecoderBuilder__Bind6Return_Z1E2849F5(_, d1, d2, d3, d4, d5, d6, ctor) {
|
|
39
|
+
return map6((a, b, c, d, e, f) => ctor([a, b, c, d, e, f]), d1, d2, d3, d4, d5, d6);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export function DecoderBuilder__Bind7Return_Z16900C37(_, d1, d2, d3, d4, d5, d6, d7, ctor) {
|
|
43
|
+
return map7((a, b, c, d, e, f, g) => ctor([a, b, c, d, e, f, g]), d1, d2, d3, d4, d5, d6, d7);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export function DecoderBuilder__Bind8Return_512F4ECB(_, d1, d2, d3, d4, d5, d6, d7, d8, ctor) {
|
|
47
|
+
return map8((a, b, c, d, e, f, g, h) => ctor([a, b, c, d, e, f, g, h]), d1, d2, d3, d4, d5, d6, d7, d8);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export function DecoderBuilder__MergeSources_83ADF00(_, d1, d2) {
|
|
51
|
+
return map2((a, b) => [a, b], d1, d2);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export function DecoderBuilder__Return_1505(_, x) {
|
|
55
|
+
return succeed(x);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export function DecoderBuilder__ReturnFrom_1FBE35A8(_, x) {
|
|
59
|
+
return x;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export const decoder = DecoderBuilder_$ctor();
|
|
63
|
+
|
|
@@ -0,0 +1,380 @@
|
|
|
1
|
+
namespace Thoth.Json.Core
|
|
2
|
+
|
|
3
|
+
open System.Globalization
|
|
4
|
+
open System
|
|
5
|
+
|
|
6
|
+
[<RequireQualifiedAccess>]
|
|
7
|
+
module Encode =
|
|
8
|
+
|
|
9
|
+
let inline string value =
|
|
10
|
+
{ new IEncodable with
|
|
11
|
+
member _.Encode(helpers) = helpers.encodeString value
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
let inline char value =
|
|
15
|
+
{ new IEncodable with
|
|
16
|
+
member _.Encode(helpers) = helpers.encodeChar value
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
let inline guid value = value.ToString() |> string
|
|
20
|
+
|
|
21
|
+
let inline float value =
|
|
22
|
+
{ new IEncodable with
|
|
23
|
+
member _.Encode(helpers) = helpers.encodeDecimalNumber value
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
let float32 (value: float32) = float (Operators.float value)
|
|
27
|
+
|
|
28
|
+
let inline decimal (value: decimal) =
|
|
29
|
+
value.ToString(CultureInfo.InvariantCulture) |> string
|
|
30
|
+
|
|
31
|
+
let inline nil<'T> =
|
|
32
|
+
{ new IEncodable with
|
|
33
|
+
member _.Encode(helpers) = helpers.encodeNull ()
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
let inline bool value =
|
|
37
|
+
{ new IEncodable with
|
|
38
|
+
member _.Encode(helpers) = helpers.encodeBool value
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
let inline object (values: seq<string * IEncodable>) =
|
|
42
|
+
{ new IEncodable with
|
|
43
|
+
member _.Encode(helpers) =
|
|
44
|
+
values
|
|
45
|
+
|> Seq.map (fun (k, v) -> (k, v.Encode(helpers)))
|
|
46
|
+
|> helpers.encodeObject
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
let inline array (values: IEncodable array) =
|
|
50
|
+
{ new IEncodable with
|
|
51
|
+
member _.Encode(helpers) =
|
|
52
|
+
values
|
|
53
|
+
|> Array.map (fun v -> v.Encode(helpers))
|
|
54
|
+
|> helpers.encodeArray
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
let list (values: IEncodable list) =
|
|
58
|
+
{ new IEncodable with
|
|
59
|
+
member _.Encode(helpers) =
|
|
60
|
+
values
|
|
61
|
+
|> List.map (fun v -> v.Encode(helpers))
|
|
62
|
+
|> helpers.encodeList
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
let seq (values: IEncodable seq) =
|
|
66
|
+
{ new IEncodable with
|
|
67
|
+
member _.Encode(helpers) =
|
|
68
|
+
values
|
|
69
|
+
|> Seq.map (fun v -> v.Encode(helpers))
|
|
70
|
+
|> helpers.encodeSeq
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
let resizeArray (values: IEncodable ResizeArray) =
|
|
74
|
+
{ new IEncodable with
|
|
75
|
+
member _.Encode(helpers) =
|
|
76
|
+
let result = ResizeArray(values.Count)
|
|
77
|
+
|
|
78
|
+
for v in values do
|
|
79
|
+
result.Add(v.Encode(helpers))
|
|
80
|
+
|
|
81
|
+
helpers.encodeResizeArray result
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
let dict (values: Map<string, IEncodable>) : IEncodable =
|
|
85
|
+
values |> Map.toSeq |> object
|
|
86
|
+
|
|
87
|
+
let inline bigint (value: bigint) = value.ToString() |> string
|
|
88
|
+
|
|
89
|
+
let inline datetimeOffset (value: DateTimeOffset) =
|
|
90
|
+
value.ToString("O", CultureInfo.InvariantCulture) |> string
|
|
91
|
+
|
|
92
|
+
let inline timespan value = value.ToString() |> string
|
|
93
|
+
|
|
94
|
+
let inline datetime (value: DateTime) =
|
|
95
|
+
value.ToString("O", CultureInfo.InvariantCulture) |> string
|
|
96
|
+
|
|
97
|
+
let inline sbyte (value: sbyte) =
|
|
98
|
+
{ new IEncodable with
|
|
99
|
+
member _.Encode(helpers) =
|
|
100
|
+
helpers.encodeSignedIntegralNumber (int32 value)
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
let inline byte (value: byte) =
|
|
104
|
+
{ new IEncodable with
|
|
105
|
+
member _.Encode(helpers) =
|
|
106
|
+
helpers.encodeUnsignedIntegralNumber (uint32 value)
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
let inline int16 (value: int16) =
|
|
110
|
+
{ new IEncodable with
|
|
111
|
+
member _.Encode(helpers) =
|
|
112
|
+
helpers.encodeSignedIntegralNumber (int32 value)
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
let inline uint16 (value: uint16) =
|
|
116
|
+
{ new IEncodable with
|
|
117
|
+
member _.Encode(helpers) =
|
|
118
|
+
helpers.encodeUnsignedIntegralNumber (uint32 value)
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
let inline int (value: int) =
|
|
122
|
+
{ new IEncodable with
|
|
123
|
+
member _.Encode(helpers) =
|
|
124
|
+
helpers.encodeSignedIntegralNumber value
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
let inline uint32 (value: uint32) =
|
|
128
|
+
{ new IEncodable with
|
|
129
|
+
member _.Encode(helpers) =
|
|
130
|
+
helpers.encodeUnsignedIntegralNumber value
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
let inline int64 (value: int64) =
|
|
134
|
+
value.ToString(CultureInfo.InvariantCulture) |> string
|
|
135
|
+
|
|
136
|
+
let inline uint64 (value: uint64) =
|
|
137
|
+
value.ToString(CultureInfo.InvariantCulture) |> string
|
|
138
|
+
|
|
139
|
+
let inline unit () = nil
|
|
140
|
+
|
|
141
|
+
let tuple2 (enc1: Encoder<'T1>) (enc2: Encoder<'T2>) (v1, v2) : IEncodable =
|
|
142
|
+
array
|
|
143
|
+
[|
|
|
144
|
+
enc1 v1
|
|
145
|
+
enc2 v2
|
|
146
|
+
|]
|
|
147
|
+
|
|
148
|
+
let tuple3
|
|
149
|
+
(enc1: Encoder<'T1>)
|
|
150
|
+
(enc2: Encoder<'T2>)
|
|
151
|
+
(enc3: Encoder<'T3>)
|
|
152
|
+
(v1, v2, v3)
|
|
153
|
+
: IEncodable
|
|
154
|
+
=
|
|
155
|
+
array
|
|
156
|
+
[|
|
|
157
|
+
enc1 v1
|
|
158
|
+
enc2 v2
|
|
159
|
+
enc3 v3
|
|
160
|
+
|]
|
|
161
|
+
|
|
162
|
+
let tuple4
|
|
163
|
+
(enc1: Encoder<'T1>)
|
|
164
|
+
(enc2: Encoder<'T2>)
|
|
165
|
+
(enc3: Encoder<'T3>)
|
|
166
|
+
(enc4: Encoder<'T4>)
|
|
167
|
+
(v1, v2, v3, v4)
|
|
168
|
+
: IEncodable
|
|
169
|
+
=
|
|
170
|
+
array
|
|
171
|
+
[|
|
|
172
|
+
enc1 v1
|
|
173
|
+
enc2 v2
|
|
174
|
+
enc3 v3
|
|
175
|
+
enc4 v4
|
|
176
|
+
|]
|
|
177
|
+
|
|
178
|
+
let tuple5
|
|
179
|
+
(enc1: Encoder<'T1>)
|
|
180
|
+
(enc2: Encoder<'T2>)
|
|
181
|
+
(enc3: Encoder<'T3>)
|
|
182
|
+
(enc4: Encoder<'T4>)
|
|
183
|
+
(enc5: Encoder<'T5>)
|
|
184
|
+
(v1, v2, v3, v4, v5)
|
|
185
|
+
: IEncodable
|
|
186
|
+
=
|
|
187
|
+
array
|
|
188
|
+
[|
|
|
189
|
+
enc1 v1
|
|
190
|
+
enc2 v2
|
|
191
|
+
enc3 v3
|
|
192
|
+
enc4 v4
|
|
193
|
+
enc5 v5
|
|
194
|
+
|]
|
|
195
|
+
|
|
196
|
+
let tuple6
|
|
197
|
+
(enc1: Encoder<'T1>)
|
|
198
|
+
(enc2: Encoder<'T2>)
|
|
199
|
+
(enc3: Encoder<'T3>)
|
|
200
|
+
(enc4: Encoder<'T4>)
|
|
201
|
+
(enc5: Encoder<'T5>)
|
|
202
|
+
(enc6: Encoder<'T6>)
|
|
203
|
+
(v1, v2, v3, v4, v5, v6)
|
|
204
|
+
: IEncodable
|
|
205
|
+
=
|
|
206
|
+
array
|
|
207
|
+
[|
|
|
208
|
+
enc1 v1
|
|
209
|
+
enc2 v2
|
|
210
|
+
enc3 v3
|
|
211
|
+
enc4 v4
|
|
212
|
+
enc5 v5
|
|
213
|
+
enc6 v6
|
|
214
|
+
|]
|
|
215
|
+
|
|
216
|
+
let tuple7
|
|
217
|
+
(enc1: Encoder<'T1>)
|
|
218
|
+
(enc2: Encoder<'T2>)
|
|
219
|
+
(enc3: Encoder<'T3>)
|
|
220
|
+
(enc4: Encoder<'T4>)
|
|
221
|
+
(enc5: Encoder<'T5>)
|
|
222
|
+
(enc6: Encoder<'T6>)
|
|
223
|
+
(enc7: Encoder<'T7>)
|
|
224
|
+
(v1, v2, v3, v4, v5, v6, v7)
|
|
225
|
+
: IEncodable
|
|
226
|
+
=
|
|
227
|
+
array
|
|
228
|
+
[|
|
|
229
|
+
enc1 v1
|
|
230
|
+
enc2 v2
|
|
231
|
+
enc3 v3
|
|
232
|
+
enc4 v4
|
|
233
|
+
enc5 v5
|
|
234
|
+
enc6 v6
|
|
235
|
+
enc7 v7
|
|
236
|
+
|]
|
|
237
|
+
|
|
238
|
+
let tuple8
|
|
239
|
+
(enc1: Encoder<'T1>)
|
|
240
|
+
(enc2: Encoder<'T2>)
|
|
241
|
+
(enc3: Encoder<'T3>)
|
|
242
|
+
(enc4: Encoder<'T4>)
|
|
243
|
+
(enc5: Encoder<'T5>)
|
|
244
|
+
(enc6: Encoder<'T6>)
|
|
245
|
+
(enc7: Encoder<'T7>)
|
|
246
|
+
(enc8: Encoder<'T8>)
|
|
247
|
+
(v1, v2, v3, v4, v5, v6, v7, v8)
|
|
248
|
+
: IEncodable
|
|
249
|
+
=
|
|
250
|
+
array
|
|
251
|
+
[|
|
|
252
|
+
enc1 v1
|
|
253
|
+
enc2 v2
|
|
254
|
+
enc3 v3
|
|
255
|
+
enc4 v4
|
|
256
|
+
enc5 v5
|
|
257
|
+
enc6 v6
|
|
258
|
+
enc7 v7
|
|
259
|
+
enc8 v8
|
|
260
|
+
|]
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
let map
|
|
264
|
+
(keyEncoder: Encoder<'key>)
|
|
265
|
+
(valueEncoder: Encoder<'value>)
|
|
266
|
+
(values: Map<'key, 'value>)
|
|
267
|
+
: IEncodable
|
|
268
|
+
=
|
|
269
|
+
values
|
|
270
|
+
|> Map.toList
|
|
271
|
+
|> List.map (tuple2 keyEncoder valueEncoder)
|
|
272
|
+
|> list
|
|
273
|
+
|
|
274
|
+
let lazily<'t> (enc: Lazy<Encoder<'t>>) : Encoder<'t> =
|
|
275
|
+
fun (x: 't) -> enc.Value x
|
|
276
|
+
|
|
277
|
+
////////////
|
|
278
|
+
/// Enum ///
|
|
279
|
+
///////////
|
|
280
|
+
|
|
281
|
+
module Enum =
|
|
282
|
+
|
|
283
|
+
let byte<'TEnum when 'TEnum: enum<byte>> (value: 'TEnum) : IEncodable =
|
|
284
|
+
LanguagePrimitives.EnumToValue value |> byte
|
|
285
|
+
|
|
286
|
+
let sbyte<'TEnum when 'TEnum: enum<sbyte>>
|
|
287
|
+
(value: 'TEnum)
|
|
288
|
+
: IEncodable
|
|
289
|
+
=
|
|
290
|
+
LanguagePrimitives.EnumToValue value |> sbyte
|
|
291
|
+
|
|
292
|
+
let int16<'TEnum when 'TEnum: enum<int16>>
|
|
293
|
+
(value: 'TEnum)
|
|
294
|
+
: IEncodable
|
|
295
|
+
=
|
|
296
|
+
LanguagePrimitives.EnumToValue value |> int16
|
|
297
|
+
|
|
298
|
+
let uint16<'TEnum when 'TEnum: enum<uint16>>
|
|
299
|
+
(value: 'TEnum)
|
|
300
|
+
: IEncodable
|
|
301
|
+
=
|
|
302
|
+
LanguagePrimitives.EnumToValue value |> uint16
|
|
303
|
+
|
|
304
|
+
let int<'TEnum when 'TEnum: enum<int>> (value: 'TEnum) : IEncodable =
|
|
305
|
+
LanguagePrimitives.EnumToValue value |> int
|
|
306
|
+
|
|
307
|
+
let uint32<'TEnum when 'TEnum: enum<uint32>>
|
|
308
|
+
(value: 'TEnum)
|
|
309
|
+
: IEncodable
|
|
310
|
+
=
|
|
311
|
+
LanguagePrimitives.EnumToValue value |> uint32
|
|
312
|
+
|
|
313
|
+
/// <summary>
|
|
314
|
+
/// Encodes an option value using the provided encoder.
|
|
315
|
+
///
|
|
316
|
+
/// Attention, this encoder is lossy, it's result will not be able to distinguish between `'T option` and `'T option option`.
|
|
317
|
+
///
|
|
318
|
+
/// If you need to distinguish between `'T option` and `'T option option`, use `losslessOption`.
|
|
319
|
+
/// </summary>
|
|
320
|
+
/// <param name="encoder">The encoder to apply if the value is Some</param>
|
|
321
|
+
/// <typeparam name="'a">The type of the value to encode</typeparam>
|
|
322
|
+
/// <returns>
|
|
323
|
+
/// The result of the encoder if the value is Some, otherwise nil
|
|
324
|
+
/// </returns>
|
|
325
|
+
let lossyOption (encoder: Encoder<'a>) =
|
|
326
|
+
Option.map encoder >> Option.defaultWith (fun _ -> nil)
|
|
327
|
+
|
|
328
|
+
/// <summary>
|
|
329
|
+
/// Encodes an option value using the provided encoder.
|
|
330
|
+
///
|
|
331
|
+
/// This encoder is lossless, it's result will be able to distinguish between `'T option` and `'T option option`.
|
|
332
|
+
///
|
|
333
|
+
/// If you don't need to distinguish between `'T option` and `'T option option`, use `lossyOption`.
|
|
334
|
+
/// </summary>
|
|
335
|
+
/// <param name="encoder">The encoder to apply if the value is Some</param>
|
|
336
|
+
/// <typeparam name="'a">The type of the value to encode</typeparam>
|
|
337
|
+
/// <returns>
|
|
338
|
+
/// If the value is Some, the object will have the following fields:
|
|
339
|
+
///
|
|
340
|
+
/// - `$type` field set to `option`
|
|
341
|
+
/// - `$case` field set to `some`
|
|
342
|
+
/// - `$value` field set to the result of the encoder.
|
|
343
|
+
///
|
|
344
|
+
/// If the value is None, the object will have the following fields:
|
|
345
|
+
///
|
|
346
|
+
/// - `$type` field set to `option`
|
|
347
|
+
/// - `$case` field set to `none`
|
|
348
|
+
/// </returns>
|
|
349
|
+
let losslessOption (encoder: Encoder<'a>) (value: 'a option) =
|
|
350
|
+
match value with
|
|
351
|
+
| Some v ->
|
|
352
|
+
object
|
|
353
|
+
[
|
|
354
|
+
"$type", string "option"
|
|
355
|
+
"$case", string "some"
|
|
356
|
+
"$value", encoder v
|
|
357
|
+
]
|
|
358
|
+
| None ->
|
|
359
|
+
object
|
|
360
|
+
[
|
|
361
|
+
"$type", string "option"
|
|
362
|
+
"$case", string "none"
|
|
363
|
+
]
|
|
364
|
+
|
|
365
|
+
let rec value: Encoder<Json> =
|
|
366
|
+
fun json ->
|
|
367
|
+
match json with
|
|
368
|
+
| Json.Null -> nil
|
|
369
|
+
| Json.Boolean b -> bool b
|
|
370
|
+
| Json.String s -> string s
|
|
371
|
+
| Json.Number f -> float f
|
|
372
|
+
| Json.Array xs -> list (List.map value xs)
|
|
373
|
+
| Json.Object kvps ->
|
|
374
|
+
kvps |> Seq.map (fun (k, v) -> k, value v) |> object
|
|
375
|
+
|
|
376
|
+
let inline toJsonValue
|
|
377
|
+
(helpers: IEncoderHelpers<'JsonValue>)
|
|
378
|
+
(json: IEncodable)
|
|
379
|
+
=
|
|
380
|
+
json.Encode(helpers)
|