diff options
author | dubiousjim <dubiousjim@gmail.com> | 2020-03-16 15:02:41 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-16 15:02:41 -0400 |
commit | f9557a4ff6b73a4af37e713bb6b2294253c7b230 (patch) | |
tree | 0a4e05e6fb709e1c4ebb4bc21c2b50685049e6f4 /cli/js/ops/fs/open.ts | |
parent | 8077ade7413db72572b8685c883f078335e0561b (diff) |
Add mode option to open/create (#4289)
Diffstat (limited to 'cli/js/ops/fs/open.ts')
-rw-r--r-- | cli/js/ops/fs/open.ts | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/cli/js/ops/fs/open.ts b/cli/js/ops/fs/open.ts index 4c9281909..2ac5c715c 100644 --- a/cli/js/ops/fs/open.ts +++ b/cli/js/ops/fs/open.ts @@ -8,26 +8,34 @@ export interface OpenOptions { truncate?: boolean; create?: boolean; createNew?: boolean; + /** Permissions to use if creating the file (defaults to `0o666`, before + * the process's umask). + * It's an error to specify mode without also setting create or createNew to `true`. + * Ignored on Windows. */ + mode?: number; } export type OpenMode = "r" | "r+" | "w" | "w+" | "a" | "a+" | "x" | "x+"; export function openSync( path: string, - mode: OpenMode | undefined, + openMode: OpenMode | undefined, options: OpenOptions | undefined ): number { - return sendSync("op_open", { path, options, mode }); + const mode: number | undefined = options?.mode; + return sendSync("op_open", { path, options, openMode, mode }); } export async function open( path: string, - mode: OpenMode | undefined, + openMode: OpenMode | undefined, options: OpenOptions | undefined ): Promise<number> { + const mode: number | undefined = options?.mode; return sendAsync("op_open", { path, options, + openMode, mode }); } |