aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/bindings/ZigGlobalObject.cpp
diff options
context:
space:
mode:
authorGravatar dave caruso <me@paperdave.net> 2023-07-24 19:32:04 -0700
committerGravatar GitHub <noreply@github.com> 2023-07-24 19:32:04 -0700
commit8a0152e1290658d8167609cb23a7d19817ad4285 (patch)
tree3ec808e103ed2c360a038c2a22c6b7161bd4adb7 /src/bun.js/bindings/ZigGlobalObject.cpp
parent1f1d0bfcfbc839cad76c9bc2d644bfa8bd299a1a (diff)
downloadbun-8a0152e1290658d8167609cb23a7d19817ad4285.tar.gz
bun-8a0152e1290658d8167609cb23a7d19817ad4285.tar.zst
bun-8a0152e1290658d8167609cb23a7d19817ad4285.zip
Merge import.meta.require and require to be the same thing (#3732)
* Merge import.meta.require and require to be the same thing * support `require` and BunPlugin (runtime plugin) * plugins * unused code * revert launch.json
Diffstat (limited to 'src/bun.js/bindings/ZigGlobalObject.cpp')
-rw-r--r--src/bun.js/bindings/ZigGlobalObject.cpp21
1 files changed, 14 insertions, 7 deletions
diff --git a/src/bun.js/bindings/ZigGlobalObject.cpp b/src/bun.js/bindings/ZigGlobalObject.cpp
index 759217ed1..946e368dd 100644
--- a/src/bun.js/bindings/ZigGlobalObject.cpp
+++ b/src/bun.js/bindings/ZigGlobalObject.cpp
@@ -3448,15 +3448,23 @@ void GlobalObject::finishCreation(VM& vm)
init.set(structure);
});
- m_importMetaRequireFunctionUnbound.initLater(
+ m_requireFunctionUnbound.initLater(
[](const JSC::LazyProperty<JSC::JSGlobalObject, JSC::JSObject>::Initializer& init) {
init.set(
- Zig::ImportMetaObject::createRequireFunctionUnbound(init.vm, init.owner));
+ JSFunction::create(
+ init.vm,
+ moduleRequireCodeGenerator(init.vm),
+ init.owner->globalScope(),
+ JSFunction::createStructure(init.vm, init.owner, RequireFunctionPrototype::create(init.owner))));
});
- m_importMetaRequireResolveFunctionUnbound.initLater(
+ m_requireResolveFunctionUnbound.initLater(
[](const JSC::LazyProperty<JSC::JSGlobalObject, JSC::JSObject>::Initializer& init) {
init.set(
- Zig::ImportMetaObject::createRequireResolveFunctionUnbound(init.vm, init.owner));
+ JSFunction::create(
+ init.vm,
+ moduleRequireResolveCodeGenerator(init.vm),
+ init.owner->globalScope(),
+ JSFunction::createStructure(init.vm, init.owner, RequireResolveFunctionPrototype::create(init.owner))));
});
m_importMetaObjectStructure.initLater(
@@ -4107,7 +4115,6 @@ void GlobalObject::addBuiltinGlobals(JSC::VM& vm)
putDirectBuiltinFunction(vm, this, builtinNames.createNativeReadableStreamPrivateName(), readableStreamCreateNativeReadableStreamCodeGenerator(vm), PropertyAttribute::Builtin | PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly);
putDirectBuiltinFunction(vm, this, builtinNames.requireESMPrivateName(), importMetaObjectRequireESMCodeGenerator(vm), PropertyAttribute::Builtin | PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly);
- putDirectBuiltinFunction(vm, this, builtinNames.requirePrivateName(), importMetaObjectRequireCodeGenerator(vm), PropertyAttribute::Builtin | PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly);
putDirectBuiltinFunction(vm, this, builtinNames.loadCJS2ESMPrivateName(), importMetaObjectLoadCJS2ESMCodeGenerator(vm), PropertyAttribute::Builtin | PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly);
putDirectBuiltinFunction(vm, this, builtinNames.internalRequirePrivateName(), importMetaObjectInternalRequireCodeGenerator(vm), PropertyAttribute::Builtin | PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly);
putDirectNativeFunction(vm, this, builtinNames.createUninitializedArrayBufferPrivateName(), 1, functionCreateUninitializedArrayBuffer, ImplementationVisibility::Public, NoIntrinsic, PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly | PropertyAttribute::Function);
@@ -4622,8 +4629,8 @@ void GlobalObject::visitChildrenImpl(JSCell* cell, Visitor& visitor)
thisObject->m_emitReadableNextTickFunction.visit(visitor);
thisObject->m_JSBufferSubclassStructure.visit(visitor);
- thisObject->m_importMetaRequireFunctionUnbound.visit(visitor);
- thisObject->m_importMetaRequireResolveFunctionUnbound.visit(visitor);
+ thisObject->m_requireFunctionUnbound.visit(visitor);
+ thisObject->m_requireResolveFunctionUnbound.visit(visitor);
thisObject->m_importMetaObjectStructure.visit(visitor);
thisObject->m_asyncBoundFunctionStructure.visit(visitor);