Skip to content

Commit ba7c376

Browse files
committed
cleanup for release
1 parent a472a3c commit ba7c376

1 file changed

Lines changed: 19 additions & 22 deletions

File tree

src/dotenv.zig

Lines changed: 19 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4,30 +4,27 @@ const testing = std.testing;
44
const Allocator = std.mem.Allocator;
55
const Self = @This();
66

7-
pub const Options = struct {
8-
filename: []const u8 = ".env",
9-
};
10-
117
map: std.process.EnvMap = undefined,
128

13-
pub fn init(allocator: Allocator, options: Options) !Self {
9+
pub fn init(allocator: Allocator, filename: ?[]const u8) !Self {
1410
var map = try std.process.getEnvMap(allocator);
1511

16-
var file = std.fs.cwd().openFile(options.filename, .{}) catch {
17-
return .{ .map = map };
18-
};
19-
20-
defer file.close();
21-
var buf_reader = std.io.bufferedReader(file.reader());
22-
var in_stream = buf_reader.reader();
23-
var buf: [1024]u8 = undefined;
24-
while (try in_stream.readUntilDelimiterOrEof(&buf, '\n')) |line| {
25-
std.debug.print("Line: {s}\n", .{line});
26-
// split into KEY and Value
27-
if (std.mem.indexOf(u8, line, "=")) |index| {
28-
const key = line[0..index];
29-
const value = line[index + 1 ..];
30-
try map.put(key, value);
12+
if (filename) |f| {
13+
var file = std.fs.cwd().openFile(f, .{}) catch {
14+
return .{ .map = map };
15+
};
16+
17+
defer file.close();
18+
var buf_reader = std.io.bufferedReader(file.reader());
19+
var in_stream = buf_reader.reader();
20+
var buf: [1024]u8 = undefined;
21+
while (try in_stream.readUntilDelimiterOrEof(&buf, '\n')) |line| {
22+
// split into KEY and Value
23+
if (std.mem.indexOf(u8, line, "=")) |index| {
24+
const key = line[0..index];
25+
const value = line[index + 1 ..];
26+
try map.put(key, value);
27+
}
3128
}
3229
}
3330
return .{
@@ -48,11 +45,11 @@ pub fn put(self: *Self, key: []const u8, value: []const u8) !void {
4845
}
4946

5047
test "load an env file" {
51-
var basic_env = try Self.init(testing.allocator, .{ .filename = "" });
48+
var basic_env = try Self.init(testing.allocator, null);
5249
defer basic_env.deinit();
5350
const basic_env_count = basic_env.map.count();
5451

55-
var expanded_env = try Self.init(testing.allocator, .{ .filename = ".env" });
52+
var expanded_env = try Self.init(testing.allocator, ".env");
5653
defer expanded_env.deinit();
5754
const expanded_env_count = expanded_env.map.count();
5855

0 commit comments

Comments
 (0)