diff options
author | 2022-10-15 03:06:41 -0700 | |
---|---|---|
committer | 2022-10-15 03:06:41 -0700 | |
commit | 4b5af13ac09e32e8e446cb8000fe5d8d101b3afb (patch) | |
tree | d7431bfea4723717fe4a2f6db89b2a97d017f201 /src/bun.js/api/server.classes.ts | |
parent | 35cbfa63a6e54d37ad5edb14ef2c025acf7bbddd (diff) | |
download | bun-4b5af13ac09e32e8e446cb8000fe5d8d101b3afb.tar.gz bun-4b5af13ac09e32e8e446cb8000fe5d8d101b3afb.tar.zst bun-4b5af13ac09e32e8e446cb8000fe5d8d101b3afb.zip |
WebSocket Server support
Diffstat (limited to 'src/bun.js/api/server.classes.ts')
-rw-r--r-- | src/bun.js/api/server.classes.ts | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/src/bun.js/api/server.classes.ts b/src/bun.js/api/server.classes.ts new file mode 100644 index 000000000..5ae4f1739 --- /dev/null +++ b/src/bun.js/api/server.classes.ts @@ -0,0 +1,78 @@ +import { define } from "../scripts/class-definitions"; + +function generate(name) { + return define({ + name, + proto: { + fetch: { + fn: "fetch", + length: 1, + }, + }, + values: ["callback"], + klass: {}, + finalize: true, + construct: true, + }); +} +export default [ + // generate(`HTTPServer`), + // generate(`DebugModeHTTPServer`), + // generate(`HTTPSServer`), + // generate(`DebugModeHTTPSServer`), + + define({ + name: "ServerWebSocket", + JSType: "0b11101110", + proto: { + send: { + fn: "send", + length: 2, + }, + close: { + fn: "close", + length: 1, + }, + getBufferedAmount: { + fn: "getBufferedAmount", + length: 0, + }, + publish: { + fn: "publish", + length: 3, + }, + data: { + getter: "getData", + cache: true, + setter: "setData", + }, + readyState: { + getter: "getReadyState", + }, + subscribe: { + fn: "subscribe", + length: 1, + }, + unsubscribe: { + fn: "unsubscribe", + length: 1, + }, + isSubscribed: { + fn: "isSubscribed", + length: 1, + }, + + // topics: { + // getter: "getTopics", + // }, + + remoteAddress: { + getter: "getRemoteAddress", + cache: true, + }, + }, + finalize: true, + construct: true, + klass: {}, + }), +]; |