blob: c48104d4b89a365e0216fb0dbc2256ff3856a306 (
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
|
// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
import { sendSync, sendAsync } from "../dispatch_json.ts";
import { FileInfo, FileInfoImpl } from "../../file_info.ts";
import { StatResponse } from "./stat.ts";
interface ReadDirResponse {
entries: StatResponse[];
}
function res(response: ReadDirResponse): FileInfo[] {
return response.entries.map(
(statRes: StatResponse): FileInfo => {
return new FileInfoImpl(statRes);
}
);
}
export function readdirSync(path: string): FileInfo[] {
return res(sendSync("op_read_dir", { path }));
}
export async function readdir(path: string): Promise<FileInfo[]> {
return res(await sendAsync("op_read_dir", { path }));
}
|