File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -99,17 +99,21 @@ pub fn Parser(comptime Target: type) type {
9999 }
100100
101101 pub fn parseFile (self : * Self , filename : []const u8 ) ! Parsed (Target ) {
102- const file = try std .fs .cwd ().openFile (filename , .{});
103- defer file .close ();
102+ var threaded = std .Io .Threaded .init (self .alloc , .{});
103+ const io = threaded .io ();
104+ defer threaded .deinit ();
104105
105- const size = try file .getEndPos ();
106+ const file = try std .Io .Dir .cwd ().openFile (io , filename , .{});
107+ defer file .close (io );
108+
109+ const stat = try file .stat (io );
110+ const size = stat .size ;
106111 const content = try self .alloc .alloc (u8 , size );
107112 defer self .alloc .free (content );
108113
109114 var buf : [4096 ]u8 = undefined ;
110115 var w = std .Io .Writer .fixed (content );
111- var io = std .Io .Threaded .init_single_threaded ;
112- var r = file .reader (io .ioBasic (), & buf );
116+ var r = file .reader (io , & buf );
113117 _ = try w .sendFileAll (& r , .limited (size ));
114118 try w .flush ();
115119
You can’t perform that action at this time.
0 commit comments