#include "root.h" #include "headers-handwritten.h" #include "JavaScriptCore/JSCInlines.h" #include "BunClientData.h" extern "C" JSC::EncodedJSValue jsFunctionOnLoadObjectResultResolve(JSC::JSGlobalObject* globalObject, JSC::CallFrame* callFrame); extern "C" JSC::EncodedJSValue jsFunctionOnLoadObjectResultReject(JSC::JSGlobalObject* globalObject, JSC::CallFrame* callFrame); namespace Zig { class GlobalObject; } namespace JSC { class JSInternalPromise; } namespace Bun { using namespace JSC; class JSCommonJSModule; typedef uint8_t OnLoadResultType; const OnLoadResultType OnLoadResultTypeError = 0; const OnLoadResultType OnLoadResultTypeCode = 1; const OnLoadResultType OnLoadResultTypeObject = 2; const OnLoadResultType OnLoadResultTypePromise = 3; struct CodeString { ZigString string; JSC::JSValue value; BunLoaderType loader; }; union OnLoadResultValue { CodeString sourceText; JSC::JSValue object; JSC::JSValue promise; JSC::JSValue error; }; struct OnLoadResult { OnLoadResultValue value; OnLoadResultType type; }; class PendingVirtualModuleResult : public JSC::JSInternalFieldObjectImpl<3> { public: using Base = JSC::JSInternalFieldObjectImpl<3>; template static JSC::GCClient::IsoSubspace* subspaceFor(JSC::VM& vm) { if constexpr (mode == JSC::SubspaceAccess::Concurrently) return nullptr; return WebCore::subspaceForImpl( vm, [](auto& spaces) { return spaces.m_clientSubspaceForPendingVirtualModuleResult.get(); }, [](auto& spaces, auto&& space) { spaces.m_clientSubspaceForPendingVirtualModuleResult = std::forward(space); }, [](auto& spaces) { return spaces.m_subspaceForPendingVirtualModuleResult.get(); }, [](auto& spaces, auto&& space) { spaces.m_subspaceForPendingVirtualModuleResult = std::forward(space); }); } JS_EXPORT_PRIVATE static PendingVirtualModuleResult* create(VM&, Structure*); static PendingVirtualModuleResult* create(JSC::JSGlobalObject* globalObject, const WTF::String& specifier, const WTF::String& referrer); static PendingVirtualModuleResult* createWithInitialValues(VM&, Structure*); static Structure* createStructure(VM&, JSGlobalObject*, JSValue); JSC::JSInternalPromise* internalPromise(); static std::array initialValues() { return { { jsUndefined(), jsUndefined(), jsUndefined(), } }; } DECLARE_EXPORT_INFO; DECLARE_VISIT_CHILDREN; PendingVirtualModuleResult(JSC::VM&, JSC::Structure*); void finishCreation(JSC::VM&, const WTF::String& specifier, const WTF::String& referrer); }; OnLoadResult handleOnLoadResultNotPromise(Zig::GlobalObject* globalObject, JSC::JSValue objectValue); JSValue fetchESMSourceCodeSync( Zig::GlobalObject* globalObject, ErrorableResolvedSource* res, BunString* specifier, BunString* referrer); JSValue fetchESMSourceCodeAsync( Zig::GlobalObject* globalObject, ErrorableResolvedSource* res, BunString* specifier, BunString* referrer); JSValue fetchCommonJSModule( Zig::GlobalObject* globalObject, JSCommonJSModule* moduleObject, JSValue specifierValue, BunString* specifier, BunString* referrer); } // namespace Bun derrick/fix/node-tests Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
AgeCommit message (Expand)AuthorFilesLines
2021-06-06jsonGravatar Jarred Sumner 1-0/+1
2021-06-06Fix crash that happens when hundreds of files have been parsed and process.en...Gravatar Jarred Sumner 1-18/+26
2021-06-06hashGravatar Jarred Sumner 2-3/+3
2021-06-06Upgrade hash tableGravatar Jarred Sumner 9-66/+126
2021-06-06Fix bug printing large scientific notation floatsGravatar Jarred Sumner 1-9/+29
2021-06-06hmGravatar Jarred Sumner 14-186/+167
2021-06-06WIP node module bundlesGravatar Jarred Sumner 22-1047/+1411
2021-06-06wipGravatar Jarred Sumner 1-1/+2
2021-06-06debug-only printGravatar Jarred Sumner 1-0/+12
2021-06-06Bump schemaGravatar Jarred Sumner 4-0/+926
2021-06-04Generate parser versions at compile timeGravatar Jarred Sumner 1-9667/+9690
2021-06-04oops typescriptGravatar Jarred Sumner 2-3/+7
2021-06-04Fix extra space in printerGravatar Jarred Sumner 3-28/+52
2021-06-04Fix extra underscore in ensureValidIdentifierGravatar Jarred Sumner 2-14/+21
2021-06-04Generate differnet versions of Bundler, Resolver, and Caches at comptime base...Gravatar Jarred Sumner 10-2236/+2303
2021-06-04mostly fix --resolve=disableGravatar Jarred Sumner 3-29/+145
2021-06-04renameGravatar Jarred Sumner 3-10/+9
2021-06-04readme was prematureGravatar Jarred Sumner 4-150/+16
2021-06-04fix the leaksGravatar Jarred Sumner 15-566/+21587
2021-06-02oklGravatar Jarred Sumner 5-13/+39
2021-06-02keep thatGravatar Jarred Sumner 1-2/+2
2021-06-02HTTP fixes + buffer stdout/in + a little HTTP cachingGravatar Jarred Sumner 15-108/+241
2021-06-02JSX & CJS work end-to-end!Gravatar Jarred Sumner 7-157/+292
2021-06-01wipGravatar Jarred Sumner 32-793/+13870
2021-05-31linker thingsGravatar Jarred Sumner 9-183/+322
2021-05-30Fix printing bugsGravatar Jarred Sumner 8-44/+206
2021-05-30coolGravatar Jarred Sumner 9-3/+54
2021-05-30stderrGravatar Jarred Sumner 3-6/+10
2021-05-30Fix indentGravatar Jarred Sumner 1-117/+56
2021-05-30Fix Define, JSX, use more pointers for property access to minimize calls to m...Gravatar Jarred Sumner 9-795/+364
2021-05-30This'll do for now, I guess.Gravatar Jarred Sumner 3-466/+168
2021-05-30This blocks approach seems to workGravatar Jarred Sumner 6-781/+469
2021-05-29Revert "WIP"Gravatar Jarred Sumner 8-498/+653
2021-05-29WIPGravatar Jarred Sumner 8-653/+498
2021-05-29micropGravatar Jarred Sumner 7-25/+92
2021-05-29fix crashGravatar Jarred Sumner 1-1/+1
2021-05-29microp-optimize hash table stuffGravatar Jarred Sumner 1-4/+36
2021-05-29Move wyhasxhGravatar Jarred Sumner 1-0/+0
2021-05-282Gravatar Jarred Sumner 1-1/+4
2021-05-28allGravatar Jarred Sumner 14-89/+591
2021-05-28wGravatar Jarred Sumner 1-1/+4