aboutsummaryrefslogtreecommitdiff
path: root/src/env_loader.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/env_loader.zig')
-rw-r--r--src/env_loader.zig21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/env_loader.zig b/src/env_loader.zig
index f073fb19d..b7186840a 100644
--- a/src/env_loader.zig
+++ b/src/env_loader.zig
@@ -364,6 +364,8 @@ pub const Loader = struct {
@".env.production": ?logger.Source = null,
@".env": ?logger.Source = null,
+ quiet: bool = false,
+
did_load_process: bool = false,
const empty_string_value: string = "\"\"";
@@ -610,7 +612,7 @@ pub const Loader = struct {
Analytics.Features.dotenv = true;
}
- this.printLoaded(start);
+ if (!this.quiet) this.printLoaded(start);
}
pub fn printLoaded(this: *Loader, start: i128) void {
@@ -748,6 +750,23 @@ pub const Map = struct {
map: HashTable,
+ pub fn cloneToBufMap(this: *Map, allocator: *std.mem.Allocator) !std.BufMap {
+ var buf_map = std.BufMap.init(allocator);
+
+ const Convert = struct {
+ pub fn constStrToU8(s: string) []u8 {
+ return @intToPtr([*]u8, @ptrToInt(s.ptr))[0..s.len];
+ }
+ };
+
+ var iter_ = this.map.iterator();
+ while (iter_.next()) |entry| {
+ try buf_map.putMove(Convert.constStrToU8(entry.key_ptr.*), Convert.constStrToU8(entry.value_ptr.*));
+ }
+
+ return buf_map;
+ }
+
pub inline fn init(allocator: *std.mem.Allocator) Map {
return Map{ .map = HashTable.init(allocator) };
}