|
@@ -3,6 +3,8 @@ package os2
|
|
|
import "base:runtime"
|
|
|
import "core:slice"
|
|
|
|
|
|
+read_dir :: read_directory
|
|
|
+
|
|
|
@(require_results)
|
|
|
read_directory :: proc(f: ^File, n: int, allocator: runtime.Allocator) -> (files: []File_Info, err: Error) {
|
|
|
if f == nil {
|
|
@@ -57,6 +59,7 @@ read_all_directory_by_path :: proc(path: string, allocator: runtime.Allocator) -
|
|
|
}
|
|
|
|
|
|
|
|
|
+
|
|
|
Read_Directory_Iterator :: struct {
|
|
|
f: ^File,
|
|
|
impl: Read_Directory_Iterator_Impl,
|
|
@@ -72,7 +75,6 @@ read_directory_iterator_destroy :: proc(it: ^Read_Directory_Iterator) {
|
|
|
_read_directory_iterator_destroy(it)
|
|
|
}
|
|
|
|
|
|
-
|
|
|
// NOTE(bill): `File_Info` does not need to deleted on each iteration. Any copies must be manually copied with `file_info_clone`
|
|
|
@(require_results)
|
|
|
read_directory_iterator :: proc(it: ^Read_Directory_Iterator) -> (fi: File_Info, index: int, ok: bool) {
|