mirror of
https://github.com/oven-sh/bun
synced 2026-02-12 03:48:56 +00:00
- WTFMove → WTF::move / std::move: Replaced WTFMove() macro with WTF::move() function for WTF types, std::move() for std types - SortedArrayMap removed: Replaced with if-else chains in EventFactory.cpp, JSCryptoKeyUsage.cpp - Wasm::Memory::create signature changed: Removed VM parameter - URLPattern allocation: Changed from WTF_MAKE_ISO_ALLOCATED to WTF_MAKE_TZONE_ALLOCATED --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
49 lines
1.5 KiB
C++
49 lines
1.5 KiB
C++
#pragma once
|
|
#include "root.h"
|
|
#include "headers-handwritten.h"
|
|
#include "BakeGlobalObject.h"
|
|
#include "JavaScriptCore/SourceOrigin.h"
|
|
|
|
namespace Bake {
|
|
|
|
class SourceProvider;
|
|
|
|
extern "C" void Bun__addBakeSourceProviderSourceMap(void* bun_vm, SourceProvider* opaque_source_provider, BunString* specifier);
|
|
|
|
class SourceProvider final : public JSC::StringSourceProvider {
|
|
public:
|
|
static Ref<SourceProvider> create(
|
|
JSC::JSGlobalObject* globalObject,
|
|
const String& source,
|
|
const JSC::SourceOrigin& sourceOrigin,
|
|
String&& sourceURL,
|
|
const TextPosition& startPosition,
|
|
JSC::SourceProviderSourceType sourceType)
|
|
{
|
|
auto provider = adoptRef(*new SourceProvider(source, sourceOrigin, WTF::move(sourceURL), startPosition, sourceType));
|
|
auto* zigGlobalObject = jsCast<Zig::GlobalObject*>(globalObject);
|
|
auto specifier = Bun::toString(provider->sourceURL());
|
|
Bun__addBakeSourceProviderSourceMap(zigGlobalObject->bunVM(), provider.ptr(), &specifier);
|
|
return provider;
|
|
}
|
|
|
|
private:
|
|
SourceProvider(
|
|
const String& source,
|
|
const JSC::SourceOrigin& sourceOrigin,
|
|
String&& sourceURL,
|
|
const TextPosition& startPosition,
|
|
JSC::SourceProviderSourceType sourceType)
|
|
: StringSourceProvider(
|
|
source,
|
|
sourceOrigin,
|
|
JSC::SourceTaintedOrigin::Untainted,
|
|
WTF::move(sourceURL),
|
|
startPosition,
|
|
sourceType)
|
|
{
|
|
}
|
|
};
|
|
|
|
} // namespace Bake
|