Module: LinuxStat::NFTW
- Defined in:
- ext/nftw/nftw.c
Constant Summary collapse
- FLAGS =
Constants
flags_hash(nftw)
- FTW_ACTIONRETVAL =
INT2FIX(FTW_ACTIONRETVAL)
- FTW_CHDIR =
INT2FIX(FTW_CHDIR)
- FTW_DEPTH =
INT2FIX(FTW_DEPTH)
- FTW_MOUNT =
INT2FIX(FTW_MOUNT)
- FTW_PHYS =
INT2FIX(FTW_PHYS)
- FTW_CONTINUE =
INT2FIX(FTW_CONTINUE)
- FTW_SKIP_SIBLINGS =
INT2FIX(FTW_SKIP_SIBLINGS)
- FTW_SKIP_SUBTREE =
INT2FIX(FTW_SKIP_SUBTREE)
- FTW_STOP =
INT2FIX(FTW_STOP)
- FTW_D =
typeflags
INT2FIX(FTW_D)
- FTW_DNR =
INT2FIX(FTW_DNR)
- FTW_DP =
INT2FIX(FTW_DP)
- FTW_F =
INT2FIX(FTW_F)
- FTW_NS =
INT2FIX(FTW_NS)
- FTW_SL =
INT2FIX(FTW_SL)
- FTW_SLN =
INT2FIX(FTW_SLN)
Class Method Summary collapse
- .count_children(rb_dir, rb_flags) ⇒ Object
- .count_directories(rb_dir) ⇒ Object
- .count_files(rb_dir) ⇒ Object
-
.stat(rb_dir, rb_flags) ⇒ Object
Methods.
- .stat_files(rb_dir) ⇒ Object
Class Method Details
.count_children(rb_dir, rb_flags) ⇒ Object
144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 |
# File 'ext/nftw/nftw.c', line 144 VALUE getChildrenCount(volatile VALUE obj, volatile VALUE rb_dir, volatile VALUE rb_flags) { TOTAL_FILES = 0 ; rb_ary_clear(LIST) ; int flags = FIX2INT(rb_flags); char *dir = StringValuePtr(rb_dir) ; VALUE returnValue = rb_hash_new() ; if (nftw(dir, countChildren, 20, flags) == -1) { rb_hash_aset(returnValue, ID2SYM(rb_intern("value")), ULL2NUM(TOTAL_FILES)) ; rb_hash_aset(returnValue, ID2SYM(rb_intern("error")), Qtrue) ; } else { rb_hash_aset(returnValue, ID2SYM(rb_intern("value")), ULL2NUM(TOTAL_FILES)) ; rb_hash_aset(returnValue, ID2SYM(rb_intern("error")), Qfalse) ; } return returnValue ; } |
.count_directories(rb_dir) ⇒ Object
177 178 179 180 181 182 183 184 185 186 187 188 189 |
# File 'ext/nftw/nftw.c', line 177 VALUE getDirectoriesCount(volatile VALUE obj, volatile VALUE rb_dir) { TOTAL_FILES = 0 ; int flags = FTW_PHYS ; #ifdef FTW_CONTINUE flags |= FTW_CONTINUE ; #endif if (nftw(StringValuePtr(rb_dir), countDirectories, 20, flags) == -1) return Qnil ; return ULL2NUM(--TOTAL_FILES) ; } |
.count_files(rb_dir) ⇒ Object
163 164 165 166 167 168 169 170 171 172 173 174 175 |
# File 'ext/nftw/nftw.c', line 163 VALUE getFilesCount(volatile VALUE obj, volatile VALUE rb_dir) { TOTAL_FILES = 0 ; int flags = FTW_PHYS ; #ifdef FTW_CONTINUE flags |= FTW_CONTINUE ; #endif if (nftw(StringValuePtr(rb_dir), countFiles, 20, flags) == -1) return Qnil ; return ULL2NUM(TOTAL_FILES) ; } |
.stat(rb_dir, rb_flags) ⇒ Object
Methods
191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 |
# File 'ext/nftw/nftw.c', line 191 VALUE getStat(volatile VALUE obj, volatile VALUE rb_dir, volatile VALUE rb_flags) { rb_ary_clear(LIST) ; int flags = FIX2INT(rb_flags); char *dir = StringValuePtr(rb_dir) ; VALUE returnValue = rb_hash_new() ; if (nftw(dir, storeInfo, 20, flags) == -1) { rb_hash_aset(returnValue, ID2SYM(rb_intern("value")), LIST) ; rb_hash_aset(returnValue, ID2SYM(rb_intern("error")), Qtrue) ; } else { rb_hash_aset(returnValue, ID2SYM(rb_intern("value")), LIST) ; rb_hash_aset(returnValue, ID2SYM(rb_intern("error")), Qfalse) ; } return returnValue ; } |
.stat_files(rb_dir) ⇒ Object
209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 |
# File 'ext/nftw/nftw.c', line 209 VALUE getFilesStat(volatile VALUE obj, volatile VALUE rb_dir) { rb_ary_clear(LIST) ; int flags = FTW_PHYS ; #ifdef FTW_CONTINUE flags |= FTW_CONTINUE ; #endif char *dir = StringValuePtr(rb_dir) ; VALUE returnValue = rb_hash_new() ; if (nftw(dir, storeFilesInfo, 20, flags) == -1) { rb_hash_aset(returnValue, ID2SYM(rb_intern("value")), LIST) ; rb_hash_aset(returnValue, ID2SYM(rb_intern("error")), Qtrue) ; } else { rb_hash_aset(returnValue, ID2SYM(rb_intern("value")), LIST) ; rb_hash_aset(returnValue, ID2SYM(rb_intern("error")), Qfalse) ; } return returnValue ; } |