REPL (Read-eval-print loop) utilities.
Use Sender to send message to REPL and Receiver to receive message from
REPL.
import{Receiver,Sender}from"./mod.ts";constproc=Deno.run({cmd: ["ssh","-tt","localhost","/bin/sh"],stdin: "piped",stdout: "piped",});constreceiver=newReceiver(proc.stdout,{pattern: /.*\$$/,});constsender=newSender(proc.stdin);awaitreceiver.recv();awaitsender.send("ls -al\n");constreceived=awaitreceiver.recv();awaitsender.send("exit\n");awaitproc.status();proc.close();console.log("-".repeat(80));console.log(received);console.log("-".repeat(80));import{Receiver,Sender}from"./mod.ts";constusername="johntitor";constpassword="steinsgate";constproc=Deno.run({cmd: ["telnet","localhost"],stdin: "piped",stdout: "piped",});constreceiver=newReceiver(proc.stdout,{pattern: /.*%/,});constsender=newSender(proc.stdin);awaitreceiver.recv(/login:$/);awaitsender.send(`${username}\n`);awaitreceiver.recv(/Password:$/);awaitsender.send(`${password}\n`);awaitreceiver.recv();awaitsender.send("ls -al\n");constreceived=awaitreceiver.recv();awaitsender.send("exit\n");awaitproc.status();proc.close();console.log("-".repeat(80));console.log(received);console.log("-".repeat(80));Lint code like:
make lint
Format code like
make fmt
Check types like
make type-check
Run tests like:
make test
The code follows MIT license written in LICENSE. Contributors need to agree that any modifications sent in this repository follow the license.