2020-01-02 15:13:47 -05:00
|
|
|
// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
|
2019-09-02 17:07:11 -04:00
|
|
|
import { sendSync } from "./dispatch_json.ts";
|
2018-10-30 15:58:55 -04:00
|
|
|
|
2019-03-09 12:30:38 -05:00
|
|
|
export interface ResourceMap {
|
|
|
|
[rid: number]: string;
|
|
|
|
}
|
2018-11-08 23:07:48 -05:00
|
|
|
|
|
|
|
/** Returns a map of open _file like_ resource ids along with their string
|
|
|
|
* representation.
|
|
|
|
*/
|
|
|
|
export function resources(): ResourceMap {
|
2020-02-25 09:14:27 -05:00
|
|
|
const res = sendSync("op_resources") as Array<[number, string]>;
|
2019-03-09 12:30:38 -05:00
|
|
|
const resources: ResourceMap = {};
|
2019-08-26 08:50:21 -04:00
|
|
|
for (const resourceTuple of res) {
|
|
|
|
resources[resourceTuple[0]] = resourceTuple[1];
|
2018-10-30 15:58:55 -04:00
|
|
|
}
|
|
|
|
return resources;
|
|
|
|
}
|
2020-03-08 08:09:22 -04:00
|
|
|
|
|
|
|
/** Close the given resource ID. */
|
|
|
|
export function close(rid: number): void {
|
|
|
|
sendSync("op_close", { rid });
|
|
|
|
}
|