diff options
Diffstat (limited to 'src/bun.js/bindings/JSSocketAddress.cpp')
-rw-r--r-- | src/bun.js/bindings/JSSocketAddress.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/bun.js/bindings/JSSocketAddress.cpp b/src/bun.js/bindings/JSSocketAddress.cpp index 53084adb6..181507339 100644 --- a/src/bun.js/bindings/JSSocketAddress.cpp +++ b/src/bun.js/bindings/JSSocketAddress.cpp @@ -9,8 +9,7 @@ using namespace JSC; namespace Bun { namespace JSSocketAddress { -// Using a structure with inlined offsets will be more lightweight than a class. - +// Using a structure with inlined offsets should be more lightweight than a class. Structure* createStructure(VM& vm, JSGlobalObject* globalObject) { JSC::Structure* structure = globalObject->structureCache().emptyObjectStructureForPrototype( @@ -48,13 +47,16 @@ Structure* createStructure(VM& vm, JSGlobalObject* globalObject) extern "C" JSObject* JSSocketAddress__create(JSGlobalObject* globalObject, JSString* value, int32_t port, bool isIPv6) { + static const NeverDestroyed<String> IPv4 = MAKE_STATIC_STRING_IMPL("IPv4"); + static const NeverDestroyed<String> IPv6 = MAKE_STATIC_STRING_IMPL("IPv6"); + VM& vm = globalObject->vm(); auto* global = jsCast<Zig::GlobalObject*>(globalObject); JSObject* thisObject = constructEmptyObject(vm, global->JSSocketAddressStructure()); thisObject->putDirectOffset(vm, 0, value); - thisObject->putDirectOffset(vm, 1, isIPv6 ? jsString(vm, Bun::JSSocketAddress::IPv6) : jsString(vm, Bun::JSSocketAddress::IPv4)); + thisObject->putDirectOffset(vm, 1, isIPv6 ? jsString(vm, IPv6) : jsString(vm, IPv4)); thisObject->putDirectOffset(vm, 2, jsNumber(port)); return thisObject; |