diff options
author | 2022-01-19 23:07:03 -0800 | |
---|---|---|
committer | 2022-01-19 23:07:03 -0800 | |
commit | a09b99565138bb4bc73a5328397428fb5025817b (patch) | |
tree | 3412ae330b4a6078173d0048665b9d547b3d718b /src/javascript/jsc/javascript.zig | |
parent | 4098484ff5d1c66a5f146e773a9be25cbcd2a1f4 (diff) | |
download | bun-a09b99565138bb4bc73a5328397428fb5025817b.tar.gz bun-a09b99565138bb4bc73a5328397428fb5025817b.tar.zst bun-a09b99565138bb4bc73a5328397428fb5025817b.zip |
Bun.Transpiler – API for scanning imports/exports of JSX/TSX/TS/JS files
Diffstat (limited to 'src/javascript/jsc/javascript.zig')
-rw-r--r-- | src/javascript/jsc/javascript.zig | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/javascript/jsc/javascript.zig b/src/javascript/jsc/javascript.zig index 64147bc5c..2299e9339 100644 --- a/src/javascript/jsc/javascript.zig +++ b/src/javascript/jsc/javascript.zig @@ -77,6 +77,7 @@ const ZigGlobalObject = @import("../../jsc.zig").ZigGlobalObject; const VM = @import("../../jsc.zig").VM; const Config = @import("./config.zig"); const URL = @import("../../query_string_map.zig").URL; +const Transpiler = @import("./api/transpiler.zig"); pub const GlobalClasses = [_]type{ Request.Class, Response.Class, @@ -746,9 +747,23 @@ pub const Bun = struct { .enableANSIColors = .{ .get = enableANSIColors, }, + .Transpiler = .{ + .get = getTranspilerConstructor, + .ts = d.ts{ .name = "Transpiler", .@"return" = "Transpiler.prototype" }, + }, }, ); + pub fn getTranspilerConstructor( + _: void, + ctx: js.JSContextRef, + _: js.JSValueRef, + _: js.JSStringRef, + _: js.ExceptionRef, + ) js.JSValueRef { + return js.JSObjectMake(ctx, Transpiler.TranspilerConstructor.get().?[0], null); + } + // For testing the segfault handler pub fn __debug__doSegfault( _: void, @@ -1702,7 +1717,7 @@ pub const VirtualMachine = struct { } const main_file_name: string = "bun:main"; - threadlocal var errors_stack: [256]*anyopaque = undefined; + pub threadlocal var errors_stack: [256]*anyopaque = undefined; pub fn fetch(ret: *ErrorableResolvedSource, global: *JSGlobalObject, specifier: ZigString, source: ZigString) callconv(.C) void { var log = logger.Log.init(vm.bundler.allocator); const spec = specifier.slice(); |