aboutsummaryrefslogtreecommitdiff
path: root/src/javascript/jsc/javascript.zig
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <jarred@jarredsumner.com> 2022-01-19 23:07:03 -0800
committerGravatar Jarred Sumner <jarred@jarredsumner.com> 2022-01-19 23:07:03 -0800
commita09b99565138bb4bc73a5328397428fb5025817b (patch)
tree3412ae330b4a6078173d0048665b9d547b3d718b /src/javascript/jsc/javascript.zig
parent4098484ff5d1c66a5f146e773a9be25cbcd2a1f4 (diff)
downloadbun-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.zig17
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();