Skip to content

Commit 0f5f525

Browse files
committed
initial commit with some deno bindings
0 parents  commit 0f5f525

18 files changed

+1559
-0
lines changed

.gitattributes

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
./yarn/**/* linguist-vendored
2+
./yarn/releases/* binary
3+
./yarn/plugins/**/* binary

.gitignore

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
.DS_Store
2+
*.log
3+
.merlin
4+
5+
*.bs.js
6+
lib/
7+
8+
node_modules/
9+
.pnp.*
10+
.yarn/*
11+
!.yarn/patches
12+
!.yarn/plugins
13+
!.yarn/releases
14+
!.yarn/sdks
15+
!.yarn/versions

.yarn/releases/yarn-berry.cjs

+768
Large diffs are not rendered by default.

.yarnrc.yml

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
nodeLinker: node-modules
2+
3+
yarnPath: .yarn/releases/yarn-berry.cjs

bsconfig.json

+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
{
2+
"name": "rescript-deno",
3+
"namespace": false,
4+
"refmt": 3,
5+
"suffix": ".bs.js",
6+
"sources": [
7+
{
8+
"dir": "src",
9+
"subdirs": true
10+
},
11+
{
12+
"dir": "examples",
13+
"dev": true,
14+
"subdirs": true
15+
}
16+
],
17+
"package-specs": [
18+
{
19+
"module": "es6",
20+
"in-source": true
21+
}
22+
],
23+
"external-stdlib": "@rescript/std",
24+
"bs-dependencies": [
25+
"@ryyppy/rescript-promise",
26+
"rescript-webapi"
27+
],
28+
"bs-dev-dependencies": [
29+
]
30+
}

examples/Cat.res

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
Js.log("example: https://deno.land/std/examples/cat.ts")
2+
3+
module Deno = RescriptDeno
4+
5+
let catFile = filename => {
6+
Deno.open_(filename, ())->Promise.thenResolve(file => {
7+
Deno.Std.Stream.copy(
8+
~src=module(
9+
{
10+
let read = file->Deno.File.read
11+
}
12+
),
13+
~dst=module(
14+
{
15+
let write = Deno.stdout->Deno.Stdout.write
16+
}
17+
),
18+
(),
19+
)->Promise.thenResolve(_ => {
20+
file->Deno.File.close
21+
})
22+
})
23+
}
24+
25+
Deno.args
26+
->Belt.Array.reduce(Promise.resolve(), (promise, filename) =>
27+
promise->Promise.thenResolve(_ => catFile(filename)->ignore)
28+
)
29+
->ignore

import_map.json

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"imports": {
3+
"@rescript/std/": "./node_modules/@rescript/std/"
4+
}
5+
}

package.json

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"name": "rescript-deno",
3+
"version": "0.0.1",
4+
"main": "index.js",
5+
"license": "MIT",
6+
"dependencies": {
7+
"@rescript/std": "^9.1.3",
8+
"@ryyppy/rescript-promise": "^2.1.0",
9+
"rescript-webapi": "^0.2.0"
10+
},
11+
"devDependencies": {
12+
"rescript": "^9.1.4"
13+
}
14+
}

0 commit comments

Comments
 (0)