aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/modules/BufferModule.h
diff options
context:
space:
mode:
authorGravatar Zilin Zhu <zhuzilinallen@gmail.com> 2022-08-15 09:08:25 +0800
committerGravatar GitHub <noreply@github.com> 2022-08-14 18:08:25 -0700
commitafe34df3ccaee6ddf77fd7bed46472ffdc1599a3 (patch)
treef0520483a462ae781f35e06fda04bc8f773e6a62 /src/bun.js/modules/BufferModule.h
parent9af4c0420e3c930f4d01a77e9a97f75a62a87327 (diff)
downloadbun-afe34df3ccaee6ddf77fd7bed46472ffdc1599a3.tar.gz
bun-afe34df3ccaee6ddf77fd7bed46472ffdc1599a3.tar.zst
bun-afe34df3ccaee6ddf77fd7bed46472ffdc1599a3.zip
Add synthetic buffer module (#1076)
* Add synthetic buffer module * rename Buffer.h to BufferModule.h
Diffstat (limited to 'src/bun.js/modules/BufferModule.h')
-rw-r--r--src/bun.js/modules/BufferModule.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/bun.js/modules/BufferModule.h b/src/bun.js/modules/BufferModule.h
new file mode 100644
index 000000000..12d4c54c8
--- /dev/null
+++ b/src/bun.js/modules/BufferModule.h
@@ -0,0 +1,27 @@
+#include "../bindings/ZigGlobalObject.h"
+#include "JavaScriptCore/JSGlobalObject.h"
+
+namespace Zig {
+
+inline void generateBufferSourceCode(JSC::JSGlobalObject* lexicalGlobalObject, JSC::Identifier moduleKey, Vector<JSC::Identifier, 4>& exportNames, JSC::MarkedArgumentBuffer& exportValues) {
+ JSC::VM& vm = lexicalGlobalObject->vm();
+ GlobalObject* globalObject = reinterpret_cast<GlobalObject*>(lexicalGlobalObject);
+
+ exportNames.append(JSC::Identifier::fromString(vm, "Buffer"_s));
+ exportValues.append(WebCore::JSBuffer::getConstructor(vm, globalObject));
+
+ // substitute after JSBlob is implemented.
+ exportNames.append(JSC::Identifier::fromString(vm, "Blob"_s));
+ exportValues.append(JSC::jsUndefined());
+
+ exportNames.append(JSC::Identifier::fromString(vm, "INSPECT_MAX_BYTES"_s));
+ exportValues.append(JSC::jsNumber(50));
+
+ exportNames.append(JSC::Identifier::fromString(vm, "kMaxLength"_s));
+ exportValues.append(JSC::jsNumber(4294967296LL));
+
+ exportNames.append(JSC::Identifier::fromString(vm, "kMaxLength"_s));
+ exportValues.append(JSC::jsNumber(536870888));
+}
+
+}