Ruby 2.7.6p219 (2022-04-12 revision c9c2245c0a25176072e02db9254f0e0c84c805cd)
dir.h
Go to the documentation of this file.
1#ifndef RUBY_WIN32_DIR_H
2#define RUBY_WIN32_DIR_H
3
4#define DT_UNKNOWN 0
5#define DT_DIR (S_IFDIR>>12)
6#define DT_REG (S_IFREG>>12)
7#define DT_LNK 10
8
9struct direct
10{
13 char *d_name;
14 char *d_altname; /* short name */
15 short d_altlen;
17};
18typedef struct {
19 WCHAR *start;
20 WCHAR *curr;
21 long size;
22 long nfiles;
23 long loc; /* [0, nfiles) */
24 struct direct dirstr;
25 char *bits; /* used for d_isdir and d_isrep */
26} DIR;
27
28
29DIR* rb_w32_opendir(const char*);
30DIR* rb_w32_uopendir(const char*);
32long rb_w32_telldir(DIR *);
33void rb_w32_seekdir(DIR *, long);
34void rb_w32_rewinddir(DIR *);
35void rb_w32_closedir(DIR *);
36char *rb_w32_ugetcwd(char *, int);
37
38#define opendir(s) rb_w32_opendir((s))
39#define readdir(d) rb_w32_readdir((d), 0)
40#define telldir(d) rb_w32_telldir((d))
41#define seekdir(d, l) rb_w32_seekdir((d), (l))
42#define rewinddir(d) rb_w32_rewinddir((d))
43#define closedir(d) rb_w32_closedir((d))
44
45#endif /* RUBY_WIN32_DIR_H */
void rb_w32_seekdir(DIR *, long)
Definition: win32.c:2399
DIR * rb_w32_opendir(const char *)
Definition: win32.c:2196
struct direct * rb_w32_readdir(DIR *, rb_encoding *)
Definition: win32.c:2367
long rb_w32_telldir(DIR *)
Definition: win32.c:2388
DIR * rb_w32_uopendir(const char *)
Definition: win32.c:2209
void rb_w32_closedir(DIR *)
Definition: win32.c:2426
char * rb_w32_ugetcwd(char *, int)
Definition: win32.c:4768
void rb_w32_rewinddir(DIR *)
Definition: win32.c:2414
__uint8_t uint8_t
__ino_t ino_t
Definition: dir.h:18
char * bits
Definition: dir.h:25
long nfiles
Definition: dir.h:22
long size
Definition: dir.h:21
long loc
Definition: dir.h:23
WCHAR * start
Definition: dir.h:19
WCHAR * curr
Definition: dir.h:20
Definition: dir.h:10
char * d_altname
Definition: dir.h:14
long d_namlen
Definition: dir.h:11
ino_t d_ino
Definition: dir.h:12
short d_altlen
Definition: dir.h:15
uint8_t d_type
Definition: dir.h:16
char * d_name
Definition: dir.h:13