forked from denoland/deno
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: Deno.makeTempFile (denoland#4024)
- Loading branch information
1 parent
f0f807c
commit 08dcf6b
Showing
9 changed files
with
208 additions
and
47 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license. | ||
import { sendSync, sendAsync } from "./dispatch_json.ts"; | ||
import * as dispatch from "./dispatch.ts"; | ||
|
||
export interface MakeTempOptions { | ||
dir?: string; | ||
prefix?: string; | ||
suffix?: string; | ||
} | ||
|
||
/** makeTempDirSync is the synchronous version of `makeTempDir`. | ||
* | ||
* const tempDirName0 = Deno.makeTempDirSync(); | ||
* const tempDirName1 = Deno.makeTempDirSync({ prefix: 'my_temp' }); | ||
*/ | ||
export function makeTempDirSync(options: MakeTempOptions = {}): string { | ||
return sendSync(dispatch.OP_MAKE_TEMP_DIR, options); | ||
} | ||
|
||
/** makeTempDir creates a new temporary directory in the directory `dir`, its | ||
* name beginning with `prefix` and ending with `suffix`. | ||
* It returns the full path to the newly created directory. | ||
* If `dir` is unspecified, tempDir uses the default directory for temporary | ||
* files. Multiple programs calling tempDir simultaneously will not choose the | ||
* same directory. It is the caller's responsibility to remove the directory | ||
* when no longer needed. | ||
* | ||
* const tempDirName0 = await Deno.makeTempDir(); | ||
* const tempDirName1 = await Deno.makeTempDir({ prefix: 'my_temp' }); | ||
*/ | ||
export async function makeTempDir( | ||
options: MakeTempOptions = {} | ||
): Promise<string> { | ||
return await sendAsync(dispatch.OP_MAKE_TEMP_DIR, options); | ||
} | ||
|
||
/** makeTempFileSync is the synchronous version of `makeTempFile`. | ||
* | ||
* const tempFileName0 = Deno.makeTempFileSync(); | ||
* const tempFileName1 = Deno.makeTempFileSync({ prefix: 'my_temp' }); | ||
*/ | ||
export function makeTempFileSync(options: MakeTempOptions = {}): string { | ||
return sendSync(dispatch.OP_MAKE_TEMP_FILE, options); | ||
} | ||
|
||
/** makeTempFile creates a new temporary file in the directory `dir`, its | ||
* name beginning with `prefix` and ending with `suffix`. | ||
* It returns the full path to the newly created file. | ||
* If `dir` is unspecified, tempFile uses the default directory for temporary | ||
* files. Multiple programs calling tempFile simultaneously will not choose the | ||
* same directory. It is the caller's responsibility to remove the file | ||
* when no longer needed. | ||
* | ||
* const tempFileName0 = await Deno.makeTempFile(); | ||
* const tempFileName1 = await Deno.makeTempFile({ prefix: 'my_temp' }); | ||
*/ | ||
export async function makeTempFile( | ||
options: MakeTempOptions = {} | ||
): Promise<string> { | ||
return await sendAsync(dispatch.OP_MAKE_TEMP_FILE, options); | ||
} |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters