firefly-compiler 0.4.6 → 0.4.7
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/output/js/ff/compiler/Builder.mjs +444 -444
- package/output/js/ff/compiler/Compiler.mjs +416 -416
- package/output/js/ff/compiler/Dependencies.mjs +389 -389
- package/output/js/ff/compiler/Deriver.mjs +1170 -1170
- package/output/js/ff/compiler/Dictionaries.mjs +1309 -1309
- package/output/js/ff/compiler/Environment.mjs +1015 -1015
- package/output/js/ff/compiler/Inference.mjs +4268 -4268
- package/output/js/ff/compiler/JsEmitter.mjs +5391 -5391
- package/output/js/ff/compiler/JsImporter.mjs +266 -266
- package/output/js/ff/compiler/LspHook.mjs +793 -793
- package/output/js/ff/compiler/Main.mjs +1675 -1675
- package/output/js/ff/compiler/Parser.mjs +4008 -4008
- package/output/js/ff/compiler/Patterns.mjs +927 -927
- package/output/js/ff/compiler/Resolver.mjs +2307 -2307
- package/output/js/ff/compiler/Substitution.mjs +1150 -1150
- package/output/js/ff/compiler/Syntax.mjs +12434 -12434
- package/output/js/ff/compiler/Token.mjs +3096 -3096
- package/output/js/ff/compiler/Tokenizer.mjs +593 -593
- package/output/js/ff/compiler/Unification.mjs +1752 -1752
- package/output/js/ff/compiler/Wildcards.mjs +608 -608
- package/output/js/ff/compiler/Workspace.mjs +687 -687
- package/output/js/ff/core/Any.mjs +143 -143
- package/output/js/ff/core/Array.mjs +547 -547
- package/output/js/ff/core/AssetSystem.mjs +274 -274
- package/output/js/ff/core/Atomic.mjs +154 -154
- package/output/js/ff/core/Bool.mjs +152 -152
- package/output/js/ff/core/Box.mjs +112 -112
- package/output/js/ff/core/BrowserSystem.mjs +126 -126
- package/output/js/ff/core/Buffer.mjs +395 -395
- package/output/js/ff/core/BuildSystem.mjs +296 -296
- package/output/js/ff/core/Channel.mjs +189 -189
- package/output/js/ff/core/Char.mjs +149 -149
- package/output/js/ff/core/Core.mjs +300 -300
- package/output/js/ff/core/Duration.mjs +116 -116
- package/output/js/ff/core/Equal.mjs +179 -179
- package/output/js/ff/core/Error.mjs +142 -142
- package/output/js/ff/core/FileHandle.mjs +150 -150
- package/output/js/ff/core/Float.mjs +225 -225
- package/output/js/ff/core/HttpClient.mjs +191 -191
- package/output/js/ff/core/Instant.mjs +109 -109
- package/output/js/ff/core/Int.mjs +265 -265
- package/output/js/ff/core/IntMap.mjs +280 -280
- package/output/js/ff/core/JsSystem.mjs +238 -238
- package/output/js/ff/core/JsValue.mjs +708 -708
- package/output/js/ff/core/List.mjs +2334 -2334
- package/output/js/ff/core/Lock.mjs +229 -229
- package/output/js/ff/core/Log.mjs +163 -163
- package/output/js/ff/core/Map.mjs +362 -362
- package/output/js/ff/core/NodeSystem.mjs +294 -294
- package/output/js/ff/core/Nothing.mjs +104 -104
- package/output/js/ff/core/Option.mjs +1015 -1015
- package/output/js/ff/core/Ordering.mjs +730 -730
- package/output/js/ff/core/Pair.mjs +331 -331
- package/output/js/ff/core/Path.mjs +545 -545
- package/output/js/ff/core/RbMap.mjs +1940 -1940
- package/output/js/ff/core/Serializable.mjs +428 -428
- package/output/js/ff/core/Set.mjs +254 -254
- package/output/js/ff/core/Show.mjs +205 -205
- package/output/js/ff/core/SourceLocation.mjs +229 -229
- package/output/js/ff/core/Stack.mjs +529 -529
- package/output/js/ff/core/Stream.mjs +1304 -1304
- package/output/js/ff/core/String.mjs +365 -365
- package/output/js/ff/core/StringMap.mjs +280 -280
- package/output/js/ff/core/Task.mjs +320 -320
- package/output/js/ff/core/Try.mjs +507 -507
- package/output/js/ff/core/Unit.mjs +151 -151
- package/package.json +1 -1
- package/vscode/package.json +1 -1
|
@@ -1,112 +1,112 @@
|
|
|
1
|
-
import * as import$0 from 'fs';
|
|
2
|
-
|
|
3
|
-
import * as import$1 from 'fs/promises';
|
|
4
|
-
|
|
5
|
-
import * as import$2 from 'path';
|
|
6
|
-
|
|
7
|
-
import * as import$3 from 'url';
|
|
8
|
-
|
|
9
|
-
import * as ff_core_Any from "../../ff/core/Any.mjs"
|
|
10
|
-
|
|
11
|
-
import * as ff_core_Array from "../../ff/core/Array.mjs"
|
|
12
|
-
|
|
13
|
-
import * as ff_core_AssetSystem from "../../ff/core/AssetSystem.mjs"
|
|
14
|
-
|
|
15
|
-
import * as ff_core_Atomic from "../../ff/core/Atomic.mjs"
|
|
16
|
-
|
|
17
|
-
import * as ff_core_Bool from "../../ff/core/Bool.mjs"
|
|
18
|
-
|
|
19
|
-
import * as ff_core_Box from "../../ff/core/Box.mjs"
|
|
20
|
-
|
|
21
|
-
import * as ff_core_BrowserSystem from "../../ff/core/BrowserSystem.mjs"
|
|
22
|
-
|
|
23
|
-
import * as ff_core_Buffer from "../../ff/core/Buffer.mjs"
|
|
24
|
-
|
|
25
|
-
import * as ff_core_BuildSystem from "../../ff/core/BuildSystem.mjs"
|
|
26
|
-
|
|
27
|
-
import * as ff_core_Channel from "../../ff/core/Channel.mjs"
|
|
28
|
-
|
|
29
|
-
import * as ff_core_Char from "../../ff/core/Char.mjs"
|
|
30
|
-
|
|
31
|
-
import * as ff_core_Core from "../../ff/core/Core.mjs"
|
|
32
|
-
|
|
33
|
-
import * as ff_core_Duration from "../../ff/core/Duration.mjs"
|
|
34
|
-
|
|
35
|
-
import * as ff_core_Equal from "../../ff/core/Equal.mjs"
|
|
36
|
-
|
|
37
|
-
import * as ff_core_Error from "../../ff/core/Error.mjs"
|
|
38
|
-
|
|
39
|
-
import * as ff_core_FileHandle from "../../ff/core/FileHandle.mjs"
|
|
40
|
-
|
|
41
|
-
import * as ff_core_Float from "../../ff/core/Float.mjs"
|
|
42
|
-
|
|
43
|
-
import * as ff_core_HttpClient from "../../ff/core/HttpClient.mjs"
|
|
44
|
-
|
|
45
|
-
import * as ff_core_Instant from "../../ff/core/Instant.mjs"
|
|
46
|
-
|
|
47
|
-
import * as ff_core_Int from "../../ff/core/Int.mjs"
|
|
48
|
-
|
|
49
|
-
import * as ff_core_IntMap from "../../ff/core/IntMap.mjs"
|
|
50
|
-
|
|
51
|
-
import * as ff_core_JsSystem from "../../ff/core/JsSystem.mjs"
|
|
52
|
-
|
|
53
|
-
import * as ff_core_JsValue from "../../ff/core/JsValue.mjs"
|
|
54
|
-
|
|
55
|
-
import * as ff_core_List from "../../ff/core/List.mjs"
|
|
56
|
-
|
|
57
|
-
import * as ff_core_Lock from "../../ff/core/Lock.mjs"
|
|
58
|
-
|
|
59
|
-
import * as ff_core_Log from "../../ff/core/Log.mjs"
|
|
60
|
-
|
|
61
|
-
import * as ff_core_Map from "../../ff/core/Map.mjs"
|
|
62
|
-
|
|
63
|
-
import * as ff_core_NodeSystem from "../../ff/core/NodeSystem.mjs"
|
|
64
|
-
|
|
65
|
-
import * as ff_core_Nothing from "../../ff/core/Nothing.mjs"
|
|
66
|
-
|
|
67
|
-
import * as ff_core_Option from "../../ff/core/Option.mjs"
|
|
68
|
-
|
|
69
|
-
import * as ff_core_Ordering from "../../ff/core/Ordering.mjs"
|
|
70
|
-
|
|
71
|
-
import * as ff_core_Pair from "../../ff/core/Pair.mjs"
|
|
72
|
-
|
|
73
|
-
import * as ff_core_Path from "../../ff/core/Path.mjs"
|
|
74
|
-
|
|
75
|
-
import * as ff_core_Serializable from "../../ff/core/Serializable.mjs"
|
|
76
|
-
|
|
77
|
-
import * as ff_core_Set from "../../ff/core/Set.mjs"
|
|
78
|
-
|
|
79
|
-
import * as ff_core_Show from "../../ff/core/Show.mjs"
|
|
80
|
-
|
|
81
|
-
import * as ff_core_SourceLocation from "../../ff/core/SourceLocation.mjs"
|
|
82
|
-
|
|
83
|
-
import * as ff_core_Stack from "../../ff/core/Stack.mjs"
|
|
84
|
-
|
|
85
|
-
import * as ff_core_Stream from "../../ff/core/Stream.mjs"
|
|
86
|
-
|
|
87
|
-
import * as ff_core_String from "../../ff/core/String.mjs"
|
|
88
|
-
|
|
89
|
-
import * as ff_core_StringMap from "../../ff/core/StringMap.mjs"
|
|
90
|
-
|
|
91
|
-
import * as ff_core_Task from "../../ff/core/Task.mjs"
|
|
92
|
-
|
|
93
|
-
import * as ff_core_Try from "../../ff/core/Try.mjs"
|
|
94
|
-
|
|
95
|
-
import * as ff_core_Unit from "../../ff/core/Unit.mjs"
|
|
96
|
-
|
|
97
|
-
// type Path
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
// type PathEntry
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
export function internalReadStream_(createReadStream_) {
|
|
106
|
-
throw new Error('Function internalReadStream is missing on this target in sync context.');
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
export async function internalReadStream_$(createReadStream_, $task) {
|
|
1
|
+
import * as import$0 from 'fs';
|
|
2
|
+
|
|
3
|
+
import * as import$1 from 'fs/promises';
|
|
4
|
+
|
|
5
|
+
import * as import$2 from 'path';
|
|
6
|
+
|
|
7
|
+
import * as import$3 from 'url';
|
|
8
|
+
|
|
9
|
+
import * as ff_core_Any from "../../ff/core/Any.mjs"
|
|
10
|
+
|
|
11
|
+
import * as ff_core_Array from "../../ff/core/Array.mjs"
|
|
12
|
+
|
|
13
|
+
import * as ff_core_AssetSystem from "../../ff/core/AssetSystem.mjs"
|
|
14
|
+
|
|
15
|
+
import * as ff_core_Atomic from "../../ff/core/Atomic.mjs"
|
|
16
|
+
|
|
17
|
+
import * as ff_core_Bool from "../../ff/core/Bool.mjs"
|
|
18
|
+
|
|
19
|
+
import * as ff_core_Box from "../../ff/core/Box.mjs"
|
|
20
|
+
|
|
21
|
+
import * as ff_core_BrowserSystem from "../../ff/core/BrowserSystem.mjs"
|
|
22
|
+
|
|
23
|
+
import * as ff_core_Buffer from "../../ff/core/Buffer.mjs"
|
|
24
|
+
|
|
25
|
+
import * as ff_core_BuildSystem from "../../ff/core/BuildSystem.mjs"
|
|
26
|
+
|
|
27
|
+
import * as ff_core_Channel from "../../ff/core/Channel.mjs"
|
|
28
|
+
|
|
29
|
+
import * as ff_core_Char from "../../ff/core/Char.mjs"
|
|
30
|
+
|
|
31
|
+
import * as ff_core_Core from "../../ff/core/Core.mjs"
|
|
32
|
+
|
|
33
|
+
import * as ff_core_Duration from "../../ff/core/Duration.mjs"
|
|
34
|
+
|
|
35
|
+
import * as ff_core_Equal from "../../ff/core/Equal.mjs"
|
|
36
|
+
|
|
37
|
+
import * as ff_core_Error from "../../ff/core/Error.mjs"
|
|
38
|
+
|
|
39
|
+
import * as ff_core_FileHandle from "../../ff/core/FileHandle.mjs"
|
|
40
|
+
|
|
41
|
+
import * as ff_core_Float from "../../ff/core/Float.mjs"
|
|
42
|
+
|
|
43
|
+
import * as ff_core_HttpClient from "../../ff/core/HttpClient.mjs"
|
|
44
|
+
|
|
45
|
+
import * as ff_core_Instant from "../../ff/core/Instant.mjs"
|
|
46
|
+
|
|
47
|
+
import * as ff_core_Int from "../../ff/core/Int.mjs"
|
|
48
|
+
|
|
49
|
+
import * as ff_core_IntMap from "../../ff/core/IntMap.mjs"
|
|
50
|
+
|
|
51
|
+
import * as ff_core_JsSystem from "../../ff/core/JsSystem.mjs"
|
|
52
|
+
|
|
53
|
+
import * as ff_core_JsValue from "../../ff/core/JsValue.mjs"
|
|
54
|
+
|
|
55
|
+
import * as ff_core_List from "../../ff/core/List.mjs"
|
|
56
|
+
|
|
57
|
+
import * as ff_core_Lock from "../../ff/core/Lock.mjs"
|
|
58
|
+
|
|
59
|
+
import * as ff_core_Log from "../../ff/core/Log.mjs"
|
|
60
|
+
|
|
61
|
+
import * as ff_core_Map from "../../ff/core/Map.mjs"
|
|
62
|
+
|
|
63
|
+
import * as ff_core_NodeSystem from "../../ff/core/NodeSystem.mjs"
|
|
64
|
+
|
|
65
|
+
import * as ff_core_Nothing from "../../ff/core/Nothing.mjs"
|
|
66
|
+
|
|
67
|
+
import * as ff_core_Option from "../../ff/core/Option.mjs"
|
|
68
|
+
|
|
69
|
+
import * as ff_core_Ordering from "../../ff/core/Ordering.mjs"
|
|
70
|
+
|
|
71
|
+
import * as ff_core_Pair from "../../ff/core/Pair.mjs"
|
|
72
|
+
|
|
73
|
+
import * as ff_core_Path from "../../ff/core/Path.mjs"
|
|
74
|
+
|
|
75
|
+
import * as ff_core_Serializable from "../../ff/core/Serializable.mjs"
|
|
76
|
+
|
|
77
|
+
import * as ff_core_Set from "../../ff/core/Set.mjs"
|
|
78
|
+
|
|
79
|
+
import * as ff_core_Show from "../../ff/core/Show.mjs"
|
|
80
|
+
|
|
81
|
+
import * as ff_core_SourceLocation from "../../ff/core/SourceLocation.mjs"
|
|
82
|
+
|
|
83
|
+
import * as ff_core_Stack from "../../ff/core/Stack.mjs"
|
|
84
|
+
|
|
85
|
+
import * as ff_core_Stream from "../../ff/core/Stream.mjs"
|
|
86
|
+
|
|
87
|
+
import * as ff_core_String from "../../ff/core/String.mjs"
|
|
88
|
+
|
|
89
|
+
import * as ff_core_StringMap from "../../ff/core/StringMap.mjs"
|
|
90
|
+
|
|
91
|
+
import * as ff_core_Task from "../../ff/core/Task.mjs"
|
|
92
|
+
|
|
93
|
+
import * as ff_core_Try from "../../ff/core/Try.mjs"
|
|
94
|
+
|
|
95
|
+
import * as ff_core_Unit from "../../ff/core/Unit.mjs"
|
|
96
|
+
|
|
97
|
+
// type Path
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
// type PathEntry
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
export function internalReadStream_(createReadStream_) {
|
|
106
|
+
throw new Error('Function internalReadStream is missing on this target in sync context.');
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
export async function internalReadStream_$(createReadStream_, $task) {
|
|
110
110
|
|
|
111
111
|
let task = null
|
|
112
112
|
let readable = null
|
|
@@ -149,209 +149,209 @@ export async function internalReadStream_$(createReadStream_, $task) {
|
|
|
149
149
|
}).then(() => go($task))
|
|
150
150
|
return await promise
|
|
151
151
|
}, abort)
|
|
152
|
-
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
export function Path_exists(self_, checkReadable_ = false, checkWritable_ = false, checkExecutable_ = false) {
|
|
156
|
-
throw new Error('Function Path_exists is missing on this target in sync context.');
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
export function Path_isReadable(self_) {
|
|
160
|
-
return ff_core_Path.Path_exists(self_, true, false, false)
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
export function Path_isWritable(self_) {
|
|
164
|
-
return ff_core_Path.Path_exists(self_, false, true, false)
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
export function Path_isExecutable(self_) {
|
|
168
|
-
return ff_core_Path.Path_exists(self_, false, false, true)
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
export function Path_isDirectory(self_) {
|
|
172
|
-
throw new Error('Function Path_isDirectory is missing on this target in sync context.');
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
export function Path_isFile(self_) {
|
|
176
|
-
throw new Error('Function Path_isFile is missing on this target in sync context.');
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
export function Path_isSymbolicLink(self_) {
|
|
180
|
-
throw new Error('Function Path_isSymbolicLink is missing on this target in sync context.');
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
export function Path_isInsideOf(self_, path_) {
|
|
184
|
-
throw new Error('Function Path_isInsideOf is missing on this target in sync context.');
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
export function Path_size(self_) {
|
|
188
|
-
throw new Error('Function Path_size is missing on this target in sync context.');
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
export function Path_modified(self_) {
|
|
192
|
-
throw new Error('Function Path_modified is missing on this target in sync context.');
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
export function Path_entries(self_) {
|
|
196
|
-
throw new Error('Function Path_entries is missing on this target in sync context.');
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
export function Path_absolute(self_) {
|
|
200
|
-
throw new Error('Function Path_absolute is missing on this target in sync context.');
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
export function Path_relativeTo(self_, path_) {
|
|
204
|
-
throw new Error('Function Path_relativeTo is missing on this target in sync context.');
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
export function Path_endsWith(self_, parts_) {
|
|
208
|
-
function go_(pathOption_, reversed_) {
|
|
209
|
-
{
|
|
210
|
-
const pathOption_a = pathOption_;
|
|
211
|
-
const reversed_a = reversed_;
|
|
212
|
-
{
|
|
213
|
-
if(reversed_a.Empty) {
|
|
214
|
-
return true
|
|
215
|
-
return
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
{
|
|
219
|
-
if(pathOption_a.Some) {
|
|
220
|
-
const path_ = pathOption_a.value_;
|
|
221
|
-
if(reversed_a.Link) {
|
|
222
|
-
const p_ = reversed_a.head_;
|
|
223
|
-
const ps_ = reversed_a.tail_;
|
|
224
|
-
return ((ff_core_Path.Path_base(path_) === p_) && go_(ff_core_Path.Path_parent(path_), ps_))
|
|
225
|
-
return
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
{
|
|
230
|
-
if(pathOption_a.None) {
|
|
231
|
-
return false
|
|
232
|
-
return
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
return go_(ff_core_Option.Some(self_), ff_core_List.List_reverse(parts_))
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
export function Path_base(self_) {
|
|
241
|
-
throw new Error('Function Path_base is missing on this target in sync context.');
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
export function Path_extension(self_) {
|
|
245
|
-
throw new Error('Function Path_extension is missing on this target in sync context.');
|
|
246
|
-
}
|
|
247
|
-
|
|
248
|
-
export function Path_url(self_) {
|
|
249
|
-
throw new Error('Function Path_url is missing on this target in sync context.');
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
export function Path_delimiter(self_) {
|
|
253
|
-
throw new Error('Function Path_delimiter is missing on this target in sync context.');
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
export function Path_separator(self_) {
|
|
257
|
-
throw new Error('Function Path_separator is missing on this target in sync context.');
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
export function Path_parent(self_) {
|
|
261
|
-
throw new Error('Function Path_parent is missing on this target in sync context.');
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
export function Path_slash(self_, relativePath_) {
|
|
265
|
-
throw new Error('Function Path_slash is missing on this target in sync context.');
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
export function Path_path(self_, absoluteOrRelativePath_) {
|
|
269
|
-
throw new Error('Function Path_path is missing on this target in sync context.');
|
|
270
|
-
}
|
|
271
|
-
|
|
272
|
-
export function Path_copyTo(self_, path_, retries_ = 0, retryDelay_ = 100) {
|
|
273
|
-
if(ff_core_Path.Path_isDirectory(self_)) {
|
|
274
|
-
if(ff_core_Path.Path_exists(path_, false, false, false)) {
|
|
275
|
-
ff_core_Path.Path_delete(path_, retries_, retryDelay_)
|
|
276
|
-
};
|
|
277
|
-
ff_core_Path.Path_createDirectory(path_, false);
|
|
278
|
-
ff_core_Stream.Stream_each(ff_core_Path.Path_entries(self_), ((file_) => {
|
|
279
|
-
ff_core_Path.Path_copyTo(ff_core_Path.PathEntry_path(file_), ff_core_Path.Path_slash(path_, ff_core_Path.Path_relativeTo(ff_core_Path.PathEntry_path(file_), self_)), retries_, retryDelay_)
|
|
280
|
-
}))
|
|
281
|
-
} else {
|
|
282
|
-
ff_core_Path.Path_writeStream(path_, ff_core_Path.Path_readStream(self_), false)
|
|
283
|
-
}
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
export function Path_createDirectory(self_, createParentDirectories_ = false) {
|
|
287
|
-
throw new Error('Function Path_createDirectory is missing on this target in sync context.');
|
|
288
|
-
}
|
|
289
|
-
|
|
290
|
-
export function Path_createSymlinkTo(self_, path_) {
|
|
291
|
-
throw new Error('Function Path_createSymlinkTo is missing on this target in sync context.');
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
export function Path_delete(self_, retries_ = 0, retryDelay_ = 100) {
|
|
295
|
-
throw new Error('Function Path_delete is missing on this target in sync context.');
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
export function Path_truncate(self_, length_ = 0) {
|
|
299
|
-
throw new Error('Function Path_truncate is missing on this target in sync context.');
|
|
300
|
-
}
|
|
301
|
-
|
|
302
|
-
export function Path_renameTo(self_, path_) {
|
|
303
|
-
throw new Error('Function Path_renameTo is missing on this target in sync context.');
|
|
304
|
-
}
|
|
305
|
-
|
|
306
|
-
export function Path_readText(self_) {
|
|
307
|
-
throw new Error('Function Path_readText is missing on this target in sync context.');
|
|
308
|
-
}
|
|
309
|
-
|
|
310
|
-
export function Path_writeText(self_, text_) {
|
|
311
|
-
throw new Error('Function Path_writeText is missing on this target in sync context.');
|
|
312
|
-
}
|
|
313
|
-
|
|
314
|
-
export function Path_appendText(self_, text_) {
|
|
315
|
-
throw new Error('Function Path_appendText is missing on this target in sync context.');
|
|
316
|
-
}
|
|
317
|
-
|
|
318
|
-
export function Path_readBuffer(self_) {
|
|
319
|
-
return ff_core_Stream.Stream_toBuffer(ff_core_Path.Path_readStream(self_))
|
|
320
|
-
}
|
|
321
|
-
|
|
322
|
-
export function Path_writeBuffer(self_, buffer_) {
|
|
323
|
-
ff_core_Path.Path_writeStream(self_, ff_core_List.List_toStream(ff_core_List.Link(buffer_, ff_core_List.Empty()), false), false)
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
export function Path_appendBuffer(self_, buffer_) {
|
|
327
|
-
ff_core_Path.Path_appendStream(self_, ff_core_List.List_toStream(ff_core_List.Link(buffer_, ff_core_List.Empty()), false))
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
export function Path_readStream(self_) {
|
|
331
|
-
throw new Error('Function Path_readStream is missing on this target in sync context.');
|
|
332
|
-
}
|
|
333
|
-
|
|
334
|
-
export function Path_writeStream(self_, stream_, createOnly_ = false) {
|
|
335
|
-
throw new Error('Function Path_writeStream is missing on this target in sync context.');
|
|
336
|
-
}
|
|
337
|
-
|
|
338
|
-
export function Path_appendStream(self_, stream_) {
|
|
339
|
-
throw new Error('Function Path_appendStream is missing on this target in sync context.');
|
|
340
|
-
}
|
|
341
|
-
|
|
342
|
-
export function Path_readHandle(self_, alsoWrite_ = false) {
|
|
343
|
-
throw new Error('Function Path_readHandle is missing on this target in sync context.');
|
|
344
|
-
}
|
|
345
|
-
|
|
346
|
-
export function Path_writeHandle(self_, alsoRead_ = false, mustCreate_ = false) {
|
|
347
|
-
throw new Error('Function Path_writeHandle is missing on this target in sync context.');
|
|
348
|
-
}
|
|
349
|
-
|
|
350
|
-
export function Path_appendHandle(self_, alsoRead_ = false, mustCreate_ = false) {
|
|
351
|
-
throw new Error('Function Path_appendHandle is missing on this target in sync context.');
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
export async function Path_exists$(self_, checkReadable_ = false, checkWritable_ = false, checkExecutable_ = false, $task) {
|
|
152
|
+
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export function Path_exists(self_, checkReadable_ = false, checkWritable_ = false, checkExecutable_ = false) {
|
|
156
|
+
throw new Error('Function Path_exists is missing on this target in sync context.');
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
export function Path_isReadable(self_) {
|
|
160
|
+
return ff_core_Path.Path_exists(self_, true, false, false)
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
export function Path_isWritable(self_) {
|
|
164
|
+
return ff_core_Path.Path_exists(self_, false, true, false)
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
export function Path_isExecutable(self_) {
|
|
168
|
+
return ff_core_Path.Path_exists(self_, false, false, true)
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
export function Path_isDirectory(self_) {
|
|
172
|
+
throw new Error('Function Path_isDirectory is missing on this target in sync context.');
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
export function Path_isFile(self_) {
|
|
176
|
+
throw new Error('Function Path_isFile is missing on this target in sync context.');
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
export function Path_isSymbolicLink(self_) {
|
|
180
|
+
throw new Error('Function Path_isSymbolicLink is missing on this target in sync context.');
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
export function Path_isInsideOf(self_, path_) {
|
|
184
|
+
throw new Error('Function Path_isInsideOf is missing on this target in sync context.');
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
export function Path_size(self_) {
|
|
188
|
+
throw new Error('Function Path_size is missing on this target in sync context.');
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
export function Path_modified(self_) {
|
|
192
|
+
throw new Error('Function Path_modified is missing on this target in sync context.');
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
export function Path_entries(self_) {
|
|
196
|
+
throw new Error('Function Path_entries is missing on this target in sync context.');
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
export function Path_absolute(self_) {
|
|
200
|
+
throw new Error('Function Path_absolute is missing on this target in sync context.');
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
export function Path_relativeTo(self_, path_) {
|
|
204
|
+
throw new Error('Function Path_relativeTo is missing on this target in sync context.');
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
export function Path_endsWith(self_, parts_) {
|
|
208
|
+
function go_(pathOption_, reversed_) {
|
|
209
|
+
{
|
|
210
|
+
const pathOption_a = pathOption_;
|
|
211
|
+
const reversed_a = reversed_;
|
|
212
|
+
{
|
|
213
|
+
if(reversed_a.Empty) {
|
|
214
|
+
return true
|
|
215
|
+
return
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
{
|
|
219
|
+
if(pathOption_a.Some) {
|
|
220
|
+
const path_ = pathOption_a.value_;
|
|
221
|
+
if(reversed_a.Link) {
|
|
222
|
+
const p_ = reversed_a.head_;
|
|
223
|
+
const ps_ = reversed_a.tail_;
|
|
224
|
+
return ((ff_core_Path.Path_base(path_) === p_) && go_(ff_core_Path.Path_parent(path_), ps_))
|
|
225
|
+
return
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
{
|
|
230
|
+
if(pathOption_a.None) {
|
|
231
|
+
return false
|
|
232
|
+
return
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
return go_(ff_core_Option.Some(self_), ff_core_List.List_reverse(parts_))
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
export function Path_base(self_) {
|
|
241
|
+
throw new Error('Function Path_base is missing on this target in sync context.');
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
export function Path_extension(self_) {
|
|
245
|
+
throw new Error('Function Path_extension is missing on this target in sync context.');
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
export function Path_url(self_) {
|
|
249
|
+
throw new Error('Function Path_url is missing on this target in sync context.');
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
export function Path_delimiter(self_) {
|
|
253
|
+
throw new Error('Function Path_delimiter is missing on this target in sync context.');
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
export function Path_separator(self_) {
|
|
257
|
+
throw new Error('Function Path_separator is missing on this target in sync context.');
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
export function Path_parent(self_) {
|
|
261
|
+
throw new Error('Function Path_parent is missing on this target in sync context.');
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
export function Path_slash(self_, relativePath_) {
|
|
265
|
+
throw new Error('Function Path_slash is missing on this target in sync context.');
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
export function Path_path(self_, absoluteOrRelativePath_) {
|
|
269
|
+
throw new Error('Function Path_path is missing on this target in sync context.');
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
export function Path_copyTo(self_, path_, retries_ = 0, retryDelay_ = 100) {
|
|
273
|
+
if(ff_core_Path.Path_isDirectory(self_)) {
|
|
274
|
+
if(ff_core_Path.Path_exists(path_, false, false, false)) {
|
|
275
|
+
ff_core_Path.Path_delete(path_, retries_, retryDelay_)
|
|
276
|
+
};
|
|
277
|
+
ff_core_Path.Path_createDirectory(path_, false);
|
|
278
|
+
ff_core_Stream.Stream_each(ff_core_Path.Path_entries(self_), ((file_) => {
|
|
279
|
+
ff_core_Path.Path_copyTo(ff_core_Path.PathEntry_path(file_), ff_core_Path.Path_slash(path_, ff_core_Path.Path_relativeTo(ff_core_Path.PathEntry_path(file_), self_)), retries_, retryDelay_)
|
|
280
|
+
}))
|
|
281
|
+
} else {
|
|
282
|
+
ff_core_Path.Path_writeStream(path_, ff_core_Path.Path_readStream(self_), false)
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
export function Path_createDirectory(self_, createParentDirectories_ = false) {
|
|
287
|
+
throw new Error('Function Path_createDirectory is missing on this target in sync context.');
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
export function Path_createSymlinkTo(self_, path_) {
|
|
291
|
+
throw new Error('Function Path_createSymlinkTo is missing on this target in sync context.');
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
export function Path_delete(self_, retries_ = 0, retryDelay_ = 100) {
|
|
295
|
+
throw new Error('Function Path_delete is missing on this target in sync context.');
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
export function Path_truncate(self_, length_ = 0) {
|
|
299
|
+
throw new Error('Function Path_truncate is missing on this target in sync context.');
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
export function Path_renameTo(self_, path_) {
|
|
303
|
+
throw new Error('Function Path_renameTo is missing on this target in sync context.');
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
export function Path_readText(self_) {
|
|
307
|
+
throw new Error('Function Path_readText is missing on this target in sync context.');
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
export function Path_writeText(self_, text_) {
|
|
311
|
+
throw new Error('Function Path_writeText is missing on this target in sync context.');
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
export function Path_appendText(self_, text_) {
|
|
315
|
+
throw new Error('Function Path_appendText is missing on this target in sync context.');
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
export function Path_readBuffer(self_) {
|
|
319
|
+
return ff_core_Stream.Stream_toBuffer(ff_core_Path.Path_readStream(self_))
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
export function Path_writeBuffer(self_, buffer_) {
|
|
323
|
+
ff_core_Path.Path_writeStream(self_, ff_core_List.List_toStream(ff_core_List.Link(buffer_, ff_core_List.Empty()), false), false)
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
export function Path_appendBuffer(self_, buffer_) {
|
|
327
|
+
ff_core_Path.Path_appendStream(self_, ff_core_List.List_toStream(ff_core_List.Link(buffer_, ff_core_List.Empty()), false))
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
export function Path_readStream(self_) {
|
|
331
|
+
throw new Error('Function Path_readStream is missing on this target in sync context.');
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
export function Path_writeStream(self_, stream_, createOnly_ = false) {
|
|
335
|
+
throw new Error('Function Path_writeStream is missing on this target in sync context.');
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
export function Path_appendStream(self_, stream_) {
|
|
339
|
+
throw new Error('Function Path_appendStream is missing on this target in sync context.');
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
export function Path_readHandle(self_, alsoWrite_ = false) {
|
|
343
|
+
throw new Error('Function Path_readHandle is missing on this target in sync context.');
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
export function Path_writeHandle(self_, alsoRead_ = false, mustCreate_ = false) {
|
|
347
|
+
throw new Error('Function Path_writeHandle is missing on this target in sync context.');
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
export function Path_appendHandle(self_, alsoRead_ = false, mustCreate_ = false) {
|
|
351
|
+
throw new Error('Function Path_appendHandle is missing on this target in sync context.');
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
export async function Path_exists$(self_, checkReadable_ = false, checkWritable_ = false, checkExecutable_ = false, $task) {
|
|
355
355
|
|
|
356
356
|
const fs = import$0
|
|
357
357
|
const fsPromises = import$1
|
|
@@ -365,22 +365,22 @@ export async function Path_exists$(self_, checkReadable_ = false, checkWritable_
|
|
|
365
365
|
} catch(e) {
|
|
366
366
|
return false
|
|
367
367
|
}
|
|
368
|
-
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
export async function Path_isReadable$(self_, $task) {
|
|
372
|
-
return (await ff_core_Path.Path_exists$(self_, true, false, false, $task))
|
|
373
|
-
}
|
|
374
|
-
|
|
375
|
-
export async function Path_isWritable$(self_, $task) {
|
|
376
|
-
return (await ff_core_Path.Path_exists$(self_, false, true, false, $task))
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
export async function Path_isExecutable$(self_, $task) {
|
|
380
|
-
return (await ff_core_Path.Path_exists$(self_, false, false, true, $task))
|
|
381
|
-
}
|
|
382
|
-
|
|
383
|
-
export async function Path_isDirectory$(self_, $task) {
|
|
368
|
+
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
export async function Path_isReadable$(self_, $task) {
|
|
372
|
+
return (await ff_core_Path.Path_exists$(self_, true, false, false, $task))
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
export async function Path_isWritable$(self_, $task) {
|
|
376
|
+
return (await ff_core_Path.Path_exists$(self_, false, true, false, $task))
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
export async function Path_isExecutable$(self_, $task) {
|
|
380
|
+
return (await ff_core_Path.Path_exists$(self_, false, false, true, $task))
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
export async function Path_isDirectory$(self_, $task) {
|
|
384
384
|
|
|
385
385
|
const fsPromises = import$1
|
|
386
386
|
try {
|
|
@@ -388,10 +388,10 @@ export async function Path_isDirectory$(self_, $task) {
|
|
|
388
388
|
} catch(e) {
|
|
389
389
|
return false;
|
|
390
390
|
}
|
|
391
|
-
|
|
392
|
-
}
|
|
393
|
-
|
|
394
|
-
export async function Path_isFile$(self_, $task) {
|
|
391
|
+
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
export async function Path_isFile$(self_, $task) {
|
|
395
395
|
|
|
396
396
|
const fsPromises = import$1
|
|
397
397
|
try {
|
|
@@ -399,10 +399,10 @@ export async function Path_isFile$(self_, $task) {
|
|
|
399
399
|
} catch(e) {
|
|
400
400
|
return false;
|
|
401
401
|
}
|
|
402
|
-
|
|
403
|
-
}
|
|
404
|
-
|
|
405
|
-
export async function Path_isSymbolicLink$(self_, $task) {
|
|
402
|
+
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
export async function Path_isSymbolicLink$(self_, $task) {
|
|
406
406
|
|
|
407
407
|
const fsPromises = import$1
|
|
408
408
|
try {
|
|
@@ -410,32 +410,32 @@ export async function Path_isSymbolicLink$(self_, $task) {
|
|
|
410
410
|
} catch(e) {
|
|
411
411
|
return false;
|
|
412
412
|
}
|
|
413
|
-
|
|
414
|
-
}
|
|
415
|
-
|
|
416
|
-
export async function Path_isInsideOf$(self_, path_, $task) {
|
|
413
|
+
|
|
414
|
+
}
|
|
415
|
+
|
|
416
|
+
export async function Path_isInsideOf$(self_, path_, $task) {
|
|
417
417
|
|
|
418
418
|
const path = import$2
|
|
419
419
|
if(path_ === '/') return true
|
|
420
420
|
const childPath = path.resolve(self_)
|
|
421
421
|
const parentPath = path.resolve(path_)
|
|
422
422
|
return childPath.startsWith(parentPath + path.sep) || childPath === parentPath
|
|
423
|
-
|
|
424
|
-
}
|
|
425
|
-
|
|
426
|
-
export async function Path_size$(self_, $task) {
|
|
423
|
+
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
export async function Path_size$(self_, $task) {
|
|
427
427
|
|
|
428
428
|
return (await fs.promises.stat(file)).size
|
|
429
|
-
|
|
430
|
-
}
|
|
431
|
-
|
|
432
|
-
export async function Path_modified$(self_, $task) {
|
|
429
|
+
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
export async function Path_modified$(self_, $task) {
|
|
433
433
|
|
|
434
434
|
return (await fs.promises.stat(file)).mtimeMs * 0.001
|
|
435
|
-
|
|
436
|
-
}
|
|
437
|
-
|
|
438
|
-
export async function Path_entries$(self_, $task) {
|
|
435
|
+
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
export async function Path_entries$(self_, $task) {
|
|
439
439
|
|
|
440
440
|
const fsPromises = import$1
|
|
441
441
|
let dir = null
|
|
@@ -451,165 +451,165 @@ export async function Path_entries$(self_, $task) {
|
|
|
451
451
|
if(dir !== null) await dir.close()
|
|
452
452
|
}
|
|
453
453
|
)
|
|
454
|
-
|
|
455
|
-
}
|
|
456
|
-
|
|
457
|
-
export async function Path_absolute$(self_, $task) {
|
|
454
|
+
|
|
455
|
+
}
|
|
456
|
+
|
|
457
|
+
export async function Path_absolute$(self_, $task) {
|
|
458
458
|
|
|
459
459
|
const path = import$2
|
|
460
460
|
return path.resolve(self_)
|
|
461
|
-
|
|
462
|
-
}
|
|
463
|
-
|
|
464
|
-
export async function Path_relativeTo$(self_, path_, $task) {
|
|
461
|
+
|
|
462
|
+
}
|
|
463
|
+
|
|
464
|
+
export async function Path_relativeTo$(self_, path_, $task) {
|
|
465
465
|
|
|
466
466
|
const path = import$2;
|
|
467
467
|
return path.relative(path_, self_);
|
|
468
|
-
|
|
469
|
-
}
|
|
470
|
-
|
|
471
|
-
export async function Path_endsWith$(self_, parts_, $task) {
|
|
472
|
-
async function go_$(pathOption_, reversed_, $task) {
|
|
473
|
-
{
|
|
474
|
-
const pathOption_a = pathOption_;
|
|
475
|
-
const reversed_a = reversed_;
|
|
476
|
-
{
|
|
477
|
-
if(reversed_a.Empty) {
|
|
478
|
-
return true
|
|
479
|
-
return
|
|
480
|
-
}
|
|
481
|
-
}
|
|
482
|
-
{
|
|
483
|
-
if(pathOption_a.Some) {
|
|
484
|
-
const path_ = pathOption_a.value_;
|
|
485
|
-
if(reversed_a.Link) {
|
|
486
|
-
const p_ = reversed_a.head_;
|
|
487
|
-
const ps_ = reversed_a.tail_;
|
|
488
|
-
return (((await ff_core_Path.Path_base$(path_, $task)) === p_) && (await go_$((await ff_core_Path.Path_parent$(path_, $task)), ps_, $task)))
|
|
489
|
-
return
|
|
490
|
-
}
|
|
491
|
-
}
|
|
492
|
-
}
|
|
493
|
-
{
|
|
494
|
-
if(pathOption_a.None) {
|
|
495
|
-
return false
|
|
496
|
-
return
|
|
497
|
-
}
|
|
498
|
-
}
|
|
499
|
-
}
|
|
500
|
-
}
|
|
501
|
-
return (await go_$(ff_core_Option.Some(self_), ff_core_List.List_reverse(parts_), $task))
|
|
502
|
-
}
|
|
503
|
-
|
|
504
|
-
export async function Path_base$(self_, $task) {
|
|
468
|
+
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
export async function Path_endsWith$(self_, parts_, $task) {
|
|
472
|
+
async function go_$(pathOption_, reversed_, $task) {
|
|
473
|
+
{
|
|
474
|
+
const pathOption_a = pathOption_;
|
|
475
|
+
const reversed_a = reversed_;
|
|
476
|
+
{
|
|
477
|
+
if(reversed_a.Empty) {
|
|
478
|
+
return true
|
|
479
|
+
return
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
{
|
|
483
|
+
if(pathOption_a.Some) {
|
|
484
|
+
const path_ = pathOption_a.value_;
|
|
485
|
+
if(reversed_a.Link) {
|
|
486
|
+
const p_ = reversed_a.head_;
|
|
487
|
+
const ps_ = reversed_a.tail_;
|
|
488
|
+
return (((await ff_core_Path.Path_base$(path_, $task)) === p_) && (await go_$((await ff_core_Path.Path_parent$(path_, $task)), ps_, $task)))
|
|
489
|
+
return
|
|
490
|
+
}
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
{
|
|
494
|
+
if(pathOption_a.None) {
|
|
495
|
+
return false
|
|
496
|
+
return
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
}
|
|
501
|
+
return (await go_$(ff_core_Option.Some(self_), ff_core_List.List_reverse(parts_), $task))
|
|
502
|
+
}
|
|
503
|
+
|
|
504
|
+
export async function Path_base$(self_, $task) {
|
|
505
505
|
|
|
506
506
|
const path = import$2
|
|
507
507
|
return path.basename(self_)
|
|
508
|
-
|
|
509
|
-
}
|
|
510
|
-
|
|
511
|
-
export async function Path_extension$(self_, $task) {
|
|
508
|
+
|
|
509
|
+
}
|
|
510
|
+
|
|
511
|
+
export async function Path_extension$(self_, $task) {
|
|
512
512
|
|
|
513
513
|
const path = import$2
|
|
514
514
|
return path.extname(self_)
|
|
515
|
-
|
|
516
|
-
}
|
|
517
|
-
|
|
518
|
-
export async function Path_url$(self_, $task) {
|
|
515
|
+
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
export async function Path_url$(self_, $task) {
|
|
519
519
|
|
|
520
520
|
const url = import$3;
|
|
521
521
|
return '' + url.pathToFileURL(self_);
|
|
522
|
-
|
|
523
|
-
}
|
|
524
|
-
|
|
525
|
-
export async function Path_delimiter$(self_, $task) {
|
|
522
|
+
|
|
523
|
+
}
|
|
524
|
+
|
|
525
|
+
export async function Path_delimiter$(self_, $task) {
|
|
526
526
|
|
|
527
527
|
const path = import$2;
|
|
528
528
|
return path.delimiter(self_);
|
|
529
|
-
|
|
530
|
-
}
|
|
531
|
-
|
|
532
|
-
export async function Path_separator$(self_, $task) {
|
|
529
|
+
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
export async function Path_separator$(self_, $task) {
|
|
533
533
|
|
|
534
534
|
const path = import$2;
|
|
535
535
|
return path.separator();
|
|
536
|
-
|
|
537
|
-
}
|
|
538
|
-
|
|
539
|
-
export async function Path_parent$(self_, $task) {
|
|
536
|
+
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
export async function Path_parent$(self_, $task) {
|
|
540
540
|
|
|
541
541
|
const path = import$2
|
|
542
542
|
const result = path.dirname(self_)
|
|
543
543
|
return result !== "" && result !== self_
|
|
544
544
|
? ff_core_Option.Some(result)
|
|
545
545
|
: ff_core_Option.None()
|
|
546
|
-
|
|
547
|
-
}
|
|
548
|
-
|
|
549
|
-
export async function Path_slash$(self_, relativePath_, $task) {
|
|
546
|
+
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
export async function Path_slash$(self_, relativePath_, $task) {
|
|
550
550
|
|
|
551
551
|
const path = import$2
|
|
552
552
|
return path.join(self_, relativePath_)
|
|
553
|
-
|
|
554
|
-
}
|
|
555
|
-
|
|
556
|
-
export async function Path_path$(self_, absoluteOrRelativePath_, $task) {
|
|
553
|
+
|
|
554
|
+
}
|
|
555
|
+
|
|
556
|
+
export async function Path_path$(self_, absoluteOrRelativePath_, $task) {
|
|
557
557
|
|
|
558
558
|
const path = import$2
|
|
559
559
|
return path.resolve(self_, absoluteOrRelativePath_)
|
|
560
|
-
|
|
561
|
-
}
|
|
562
|
-
|
|
563
|
-
export async function Path_copyTo$(self_, path_, retries_ = 0, retryDelay_ = 100, $task) {
|
|
564
|
-
if((await ff_core_Path.Path_isDirectory$(self_, $task))) {
|
|
565
|
-
if((await ff_core_Path.Path_exists$(path_, false, false, false, $task))) {
|
|
566
|
-
(await ff_core_Path.Path_delete$(path_, retries_, retryDelay_, $task))
|
|
567
|
-
};
|
|
568
|
-
(await ff_core_Path.Path_createDirectory$(path_, false, $task));
|
|
569
|
-
(await ff_core_Stream.Stream_each$((await ff_core_Path.Path_entries$(self_, $task)), (async (file_, $task) => {
|
|
570
|
-
(await ff_core_Path.Path_copyTo$((await ff_core_Path.PathEntry_path$(file_, $task)), (await ff_core_Path.Path_slash$(path_, (await ff_core_Path.Path_relativeTo$((await ff_core_Path.PathEntry_path$(file_, $task)), self_, $task)), $task)), retries_, retryDelay_, $task))
|
|
571
|
-
}), $task))
|
|
572
|
-
} else {
|
|
573
|
-
(await ff_core_Path.Path_writeStream$(path_, (await ff_core_Path.Path_readStream$(self_, $task)), false, $task))
|
|
574
|
-
}
|
|
575
|
-
}
|
|
576
|
-
|
|
577
|
-
export async function Path_createDirectory$(self_, createParentDirectories_ = false, $task) {
|
|
560
|
+
|
|
561
|
+
}
|
|
562
|
+
|
|
563
|
+
export async function Path_copyTo$(self_, path_, retries_ = 0, retryDelay_ = 100, $task) {
|
|
564
|
+
if((await ff_core_Path.Path_isDirectory$(self_, $task))) {
|
|
565
|
+
if((await ff_core_Path.Path_exists$(path_, false, false, false, $task))) {
|
|
566
|
+
(await ff_core_Path.Path_delete$(path_, retries_, retryDelay_, $task))
|
|
567
|
+
};
|
|
568
|
+
(await ff_core_Path.Path_createDirectory$(path_, false, $task));
|
|
569
|
+
(await ff_core_Stream.Stream_each$((await ff_core_Path.Path_entries$(self_, $task)), (async (file_, $task) => {
|
|
570
|
+
(await ff_core_Path.Path_copyTo$((await ff_core_Path.PathEntry_path$(file_, $task)), (await ff_core_Path.Path_slash$(path_, (await ff_core_Path.Path_relativeTo$((await ff_core_Path.PathEntry_path$(file_, $task)), self_, $task)), $task)), retries_, retryDelay_, $task))
|
|
571
|
+
}), $task))
|
|
572
|
+
} else {
|
|
573
|
+
(await ff_core_Path.Path_writeStream$(path_, (await ff_core_Path.Path_readStream$(self_, $task)), false, $task))
|
|
574
|
+
}
|
|
575
|
+
}
|
|
576
|
+
|
|
577
|
+
export async function Path_createDirectory$(self_, createParentDirectories_ = false, $task) {
|
|
578
578
|
|
|
579
579
|
const fsPromises = import$1
|
|
580
580
|
await fsPromises.mkdir(self_, {recursive: createParentDirectories_})
|
|
581
|
-
|
|
582
|
-
}
|
|
583
|
-
|
|
584
|
-
export async function Path_createSymlinkTo$(self_, path_, $task) {
|
|
581
|
+
|
|
582
|
+
}
|
|
583
|
+
|
|
584
|
+
export async function Path_createSymlinkTo$(self_, path_, $task) {
|
|
585
585
|
|
|
586
586
|
const fsPromises = import$1
|
|
587
587
|
await fsPromises.symlink(path_, self_)
|
|
588
|
-
|
|
589
|
-
}
|
|
590
|
-
|
|
591
|
-
export async function Path_delete$(self_, retries_ = 0, retryDelay_ = 100, $task) {
|
|
588
|
+
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
export async function Path_delete$(self_, retries_ = 0, retryDelay_ = 100, $task) {
|
|
592
592
|
|
|
593
593
|
const fsPromises = import$1
|
|
594
594
|
await fsPromises.rm(self_, {recursive: true, retries: retries_, retryDelay: retryDelay_})
|
|
595
|
-
|
|
596
|
-
}
|
|
597
|
-
|
|
598
|
-
export async function Path_truncate$(self_, length_ = 0, $task) {
|
|
595
|
+
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
export async function Path_truncate$(self_, length_ = 0, $task) {
|
|
599
599
|
|
|
600
600
|
const fsPromises = import$1
|
|
601
601
|
await fsPromises.truncate(self_, length_)
|
|
602
|
-
|
|
603
|
-
}
|
|
604
|
-
|
|
605
|
-
export async function Path_renameTo$(self_, path_, $task) {
|
|
602
|
+
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
export async function Path_renameTo$(self_, path_, $task) {
|
|
606
606
|
|
|
607
607
|
const fsPromises = import$1
|
|
608
608
|
await fsPromises.rename(self_, path_)
|
|
609
|
-
|
|
610
|
-
}
|
|
611
|
-
|
|
612
|
-
export async function Path_readText$(self_, $task) {
|
|
609
|
+
|
|
610
|
+
}
|
|
611
|
+
|
|
612
|
+
export async function Path_readText$(self_, $task) {
|
|
613
613
|
|
|
614
614
|
const fsPromises = import$1
|
|
615
615
|
try {
|
|
@@ -617,10 +617,10 @@ export async function Path_readText$(self_, $task) {
|
|
|
617
617
|
} finally {
|
|
618
618
|
if($task.controller.signal.aborted) $task.controller = new AbortController()
|
|
619
619
|
}
|
|
620
|
-
|
|
621
|
-
}
|
|
622
|
-
|
|
623
|
-
export async function Path_writeText$(self_, text_, $task) {
|
|
620
|
+
|
|
621
|
+
}
|
|
622
|
+
|
|
623
|
+
export async function Path_writeText$(self_, text_, $task) {
|
|
624
624
|
|
|
625
625
|
const fsPromises = import$1
|
|
626
626
|
try {
|
|
@@ -628,10 +628,10 @@ export async function Path_writeText$(self_, text_, $task) {
|
|
|
628
628
|
} finally {
|
|
629
629
|
if($task.controller.signal.aborted) $task.controller = new AbortController()
|
|
630
630
|
}
|
|
631
|
-
|
|
632
|
-
}
|
|
633
|
-
|
|
634
|
-
export async function Path_appendText$(self_, text_, $task) {
|
|
631
|
+
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
export async function Path_appendText$(self_, text_, $task) {
|
|
635
635
|
|
|
636
636
|
const fsPromises = import$1
|
|
637
637
|
try {
|
|
@@ -639,29 +639,29 @@ export async function Path_appendText$(self_, text_, $task) {
|
|
|
639
639
|
} finally {
|
|
640
640
|
if($task.controller.signal.aborted) $task.controller = new AbortController()
|
|
641
641
|
}
|
|
642
|
-
|
|
643
|
-
}
|
|
644
|
-
|
|
645
|
-
export async function Path_readBuffer$(self_, $task) {
|
|
646
|
-
return (await ff_core_Stream.Stream_toBuffer$((await ff_core_Path.Path_readStream$(self_, $task)), $task))
|
|
647
|
-
}
|
|
648
|
-
|
|
649
|
-
export async function Path_writeBuffer$(self_, buffer_, $task) {
|
|
650
|
-
(await ff_core_Path.Path_writeStream$(self_, (await ff_core_List.List_toStream$(ff_core_List.Link(buffer_, ff_core_List.Empty()), false, $task)), false, $task))
|
|
651
|
-
}
|
|
652
|
-
|
|
653
|
-
export async function Path_appendBuffer$(self_, buffer_, $task) {
|
|
654
|
-
(await ff_core_Path.Path_appendStream$(self_, (await ff_core_List.List_toStream$(ff_core_List.Link(buffer_, ff_core_List.Empty()), false, $task)), $task))
|
|
655
|
-
}
|
|
656
|
-
|
|
657
|
-
export async function Path_readStream$(self_, $task) {
|
|
642
|
+
|
|
643
|
+
}
|
|
644
|
+
|
|
645
|
+
export async function Path_readBuffer$(self_, $task) {
|
|
646
|
+
return (await ff_core_Stream.Stream_toBuffer$((await ff_core_Path.Path_readStream$(self_, $task)), $task))
|
|
647
|
+
}
|
|
648
|
+
|
|
649
|
+
export async function Path_writeBuffer$(self_, buffer_, $task) {
|
|
650
|
+
(await ff_core_Path.Path_writeStream$(self_, (await ff_core_List.List_toStream$(ff_core_List.Link(buffer_, ff_core_List.Empty()), false, $task)), false, $task))
|
|
651
|
+
}
|
|
652
|
+
|
|
653
|
+
export async function Path_appendBuffer$(self_, buffer_, $task) {
|
|
654
|
+
(await ff_core_Path.Path_appendStream$(self_, (await ff_core_List.List_toStream$(ff_core_List.Link(buffer_, ff_core_List.Empty()), false, $task)), $task))
|
|
655
|
+
}
|
|
656
|
+
|
|
657
|
+
export async function Path_readStream$(self_, $task) {
|
|
658
658
|
|
|
659
659
|
const fs = import$0
|
|
660
660
|
return ff_core_Path.internalReadStream_$(() => fs.createReadStream(self_))
|
|
661
|
-
|
|
662
|
-
}
|
|
663
|
-
|
|
664
|
-
export async function Path_writeStream$(self_, stream_, createOnly_ = false, $task) {
|
|
661
|
+
|
|
662
|
+
}
|
|
663
|
+
|
|
664
|
+
export async function Path_writeStream$(self_, stream_, createOnly_ = false, $task) {
|
|
665
665
|
|
|
666
666
|
const fs = import$0
|
|
667
667
|
let writeable = fs.createWriteStream(self_, {flags: createOnly_ ? 'wx' : 'w'})
|
|
@@ -680,10 +680,10 @@ export async function Path_writeStream$(self_, stream_, createOnly_ = false, $ta
|
|
|
680
680
|
} finally {
|
|
681
681
|
writeable.close()
|
|
682
682
|
}
|
|
683
|
-
|
|
684
|
-
}
|
|
685
|
-
|
|
686
|
-
export async function Path_appendStream$(self_, stream_, $task) {
|
|
683
|
+
|
|
684
|
+
}
|
|
685
|
+
|
|
686
|
+
export async function Path_appendStream$(self_, stream_, $task) {
|
|
687
687
|
|
|
688
688
|
const fs = import$0
|
|
689
689
|
let writeable = fs.createWriteStream(self_, {flags: 'a'})
|
|
@@ -702,71 +702,71 @@ export async function Path_appendStream$(self_, stream_, $task) {
|
|
|
702
702
|
} finally {
|
|
703
703
|
writeable.close()
|
|
704
704
|
}
|
|
705
|
-
|
|
706
|
-
}
|
|
707
|
-
|
|
708
|
-
export async function Path_readHandle$(self_, alsoWrite_ = false, $task) {
|
|
705
|
+
|
|
706
|
+
}
|
|
707
|
+
|
|
708
|
+
export async function Path_readHandle$(self_, alsoWrite_ = false, $task) {
|
|
709
709
|
|
|
710
710
|
const fsPromises = import$1
|
|
711
711
|
return await fsPromises.open(self_, alsoWrite_ ? 'r+' : 'r')
|
|
712
|
-
|
|
713
|
-
}
|
|
714
|
-
|
|
715
|
-
export async function Path_writeHandle$(self_, alsoRead_ = false, mustCreate_ = false, $task) {
|
|
712
|
+
|
|
713
|
+
}
|
|
714
|
+
|
|
715
|
+
export async function Path_writeHandle$(self_, alsoRead_ = false, mustCreate_ = false, $task) {
|
|
716
716
|
|
|
717
717
|
const fsPromises = import$1
|
|
718
718
|
return await fsPromises.open(self_, (mustCreate_ ? 'wx' : 'w') + (alsoRead_ ? '+' : ''))
|
|
719
|
-
|
|
720
|
-
}
|
|
721
|
-
|
|
722
|
-
export async function Path_appendHandle$(self_, alsoRead_ = false, mustCreate_ = false, $task) {
|
|
719
|
+
|
|
720
|
+
}
|
|
721
|
+
|
|
722
|
+
export async function Path_appendHandle$(self_, alsoRead_ = false, mustCreate_ = false, $task) {
|
|
723
723
|
|
|
724
724
|
const fsPromises = import$1
|
|
725
725
|
return await fsPromises.open(self_, (mustCreate_ ? 'wx' : 'w') + (alsoRead_ ? '+' : ''))
|
|
726
|
-
|
|
727
|
-
}
|
|
728
|
-
|
|
729
|
-
export function PathEntry_path(self_) {
|
|
730
|
-
throw new Error('Function PathEntry_path is missing on this target in sync context.');
|
|
731
|
-
}
|
|
732
|
-
|
|
733
|
-
export function PathEntry_isDirectory(self_) {
|
|
734
|
-
throw new Error('Function PathEntry_isDirectory is missing on this target in sync context.');
|
|
735
|
-
}
|
|
736
|
-
|
|
737
|
-
export function PathEntry_isFile(self_) {
|
|
738
|
-
throw new Error('Function PathEntry_isFile is missing on this target in sync context.');
|
|
739
|
-
}
|
|
740
|
-
|
|
741
|
-
export function PathEntry_isSymbolicLink(self_) {
|
|
742
|
-
throw new Error('Function PathEntry_isSymbolicLink is missing on this target in sync context.');
|
|
743
|
-
}
|
|
744
|
-
|
|
745
|
-
export async function PathEntry_path$(self_, $task) {
|
|
726
|
+
|
|
727
|
+
}
|
|
728
|
+
|
|
729
|
+
export function PathEntry_path(self_) {
|
|
730
|
+
throw new Error('Function PathEntry_path is missing on this target in sync context.');
|
|
731
|
+
}
|
|
732
|
+
|
|
733
|
+
export function PathEntry_isDirectory(self_) {
|
|
734
|
+
throw new Error('Function PathEntry_isDirectory is missing on this target in sync context.');
|
|
735
|
+
}
|
|
736
|
+
|
|
737
|
+
export function PathEntry_isFile(self_) {
|
|
738
|
+
throw new Error('Function PathEntry_isFile is missing on this target in sync context.');
|
|
739
|
+
}
|
|
740
|
+
|
|
741
|
+
export function PathEntry_isSymbolicLink(self_) {
|
|
742
|
+
throw new Error('Function PathEntry_isSymbolicLink is missing on this target in sync context.');
|
|
743
|
+
}
|
|
744
|
+
|
|
745
|
+
export async function PathEntry_path$(self_, $task) {
|
|
746
746
|
|
|
747
747
|
const path = import$2
|
|
748
748
|
return path.join(self_.ffPath, self_.name)
|
|
749
|
-
|
|
750
|
-
}
|
|
751
|
-
|
|
752
|
-
export async function PathEntry_isDirectory$(self_, $task) {
|
|
749
|
+
|
|
750
|
+
}
|
|
751
|
+
|
|
752
|
+
export async function PathEntry_isDirectory$(self_, $task) {
|
|
753
753
|
|
|
754
754
|
return self_.isDirectory()
|
|
755
|
-
|
|
756
|
-
}
|
|
757
|
-
|
|
758
|
-
export async function PathEntry_isFile$(self_, $task) {
|
|
755
|
+
|
|
756
|
+
}
|
|
757
|
+
|
|
758
|
+
export async function PathEntry_isFile$(self_, $task) {
|
|
759
759
|
|
|
760
760
|
return self_.isFile()
|
|
761
|
-
|
|
762
|
-
}
|
|
763
|
-
|
|
764
|
-
export async function PathEntry_isSymbolicLink$(self_, $task) {
|
|
761
|
+
|
|
762
|
+
}
|
|
763
|
+
|
|
764
|
+
export async function PathEntry_isSymbolicLink$(self_, $task) {
|
|
765
765
|
|
|
766
766
|
return self_.isSymbolicLink()
|
|
767
|
-
|
|
768
|
-
}
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
767
|
+
|
|
768
|
+
}
|
|
769
|
+
|
|
770
|
+
|
|
771
|
+
|
|
772
|
+
|