* Creates a zeroed Stats object for non-existent files. * All fields are zero, including mode (no S_IFREG bit set). * This matches Node.js fs.watchFile() behavior for missing files. * @returns {Stats}
(options)
| 262 | * @returns {Stats} |
| 263 | */ |
| 264 | function createZeroStats(options) { |
| 265 | const zero = { sec: 0, nsec: 0 }; |
| 266 | |
| 267 | if (options?.bigint) { |
| 268 | return fillBigIntStatsArray( |
| 269 | 0, 0, 0, 0, 0, 0, 0, 0, |
| 270 | 0, 0, zero, zero, zero, zero, |
| 271 | ); |
| 272 | } |
| 273 | |
| 274 | statsArray[0] = 0; // dev |
| 275 | statsArray[1] = 0; // mode (no file type bits) |
| 276 | statsArray[2] = 0; // nlink |
| 277 | statsArray[3] = 0; // uid |
| 278 | statsArray[4] = 0; // gid |
| 279 | statsArray[5] = 0; // rdev |
| 280 | statsArray[6] = 0; // blksize |
| 281 | statsArray[7] = 0; // ino |
| 282 | statsArray[8] = 0; // size |
| 283 | statsArray[9] = 0; // blocks |
| 284 | statsArray[10] = 0; // atime_sec |
| 285 | statsArray[11] = 0; // atime_nsec |
| 286 | statsArray[12] = 0; // mtime_sec |
| 287 | statsArray[13] = 0; // mtime_nsec |
| 288 | statsArray[14] = 0; // ctime_sec |
| 289 | statsArray[15] = 0; // ctime_nsec |
| 290 | statsArray[16] = 0; // birthtime_sec |
| 291 | statsArray[17] = 0; // birthtime_nsec |
| 292 | |
| 293 | return getStatsFromBinding(statsArray); |
| 294 | } |
| 295 | |
| 296 | module.exports = { |
| 297 | createFileStats, |
no test coverage detected