blob: 0d3c2366752735a5100e7331325a18f76c1408ba (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
import { sendSync, sendAsync } from "../dispatch_json.ts";
export interface OpenOptions {
read?: boolean;
write?: boolean;
append?: boolean;
truncate?: boolean;
create?: boolean;
createNew?: boolean;
}
export type OpenMode = "r" | "r+" | "w" | "w+" | "a" | "a+" | "x" | "x+";
export function openSync(
path: string,
mode: OpenMode | undefined,
options: OpenOptions | undefined
): number {
return sendSync("op_open", { path, options, mode });
}
export async function open(
path: string,
mode: OpenMode | undefined,
options: OpenOptions | undefined
): Promise<number> {
return await sendAsync("op_open", {
path,
options,
mode
});
}
|