/usr/include/styx/dicts.h is in styx-dev 2.0.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 | /* ------------------------------------------------------------------------ */
/* */
/* [dicts.h] Type: Dictionary Iterator */
/* */
/* Copyright (c) 1993 by D\olle, Manns */
/* ------------------------------------------------------------------------ */
/* File generated by 'ctoh'. Don't change manually. */
#ifndef dicts_INCL
#define dicts_INCL
#include "standard.h"
#ifdef __cplusplus
extern "C" {
#endif
/* ---------------------- The Type ----------------------------------------- */
/*
The dictionary iterator provides sequentiell, platform-independant access to
a specified part of the file system.
Supported platforms are Unix and Windows.
*/
AbstractType(DII); /* Abstract dictionary iterator type */
/* --------------------------- Create & Drop -------------------------------- */
DII DII_make
(
c_string PathName, c_string Pattern,
c_bool recursive, c_bool skipErr
)
/* creates a ['recursive'] dictionary iterator for
directory 'PathName' and file 'Pattern'
'skipErr' --> error message on open failure, otherwise the program aborts
*/
;
void DII_drop(DII dii); /* drops dictionary iterator 'dii' */
/* ------------------------- Dictionary iterator access -------------------- */
c_bool DII_empty(DII dii); /* empty dictionary iterator ? */
void DII_next(DII dii); /* next dictionary entry */
c_bool DII_isFile(DII dii); /* dictionary entry = file ? */
c_bool DII_isDir(DII dii); /* dictionary entry = directory ? */
c_bool DII_isCDev(DII dii); /* dictionary entry = character device ? */
c_bool DII_isBDev(DII dii); /* dictionary entry = block device ? */
c_bool DII_isFifo(DII dii); /* dictionary entry = FIFO ? */
c_string DII_get_file(DII dii)
/* filename of dictionary entry; allocs memory */
;
c_string DII_get_base(DII dii)
/* basename of dictionary entry; allocs memory */
;
c_string DII_get_ext(DII dii)
/* extension of dictionary entry; allocs memory */
;
c_string DII_get_path(DII dii); /* path of dictionary entry; allocs memory */
/* ---------------------- Convenient iterator macros ----------------------- */
#define DII_FORALL(dii,Path,Pattern) \
for (dii = DII_make(Path,Pattern,C_False,C_False); \
DII_empty(dii)?DII_drop(dii),C_False:C_True; DII_next(dii))
#define DII_FORALL_R(dii,Path,Pattern) \
for (dii = DII_make(Path,Pattern,C_True,C_False); \
DII_empty(dii)?DII_drop(dii),C_False:C_True; DII_next(dii))
#define DII_SFORALL(dii,Path,Pattern) \
for (dii = DII_make(Path,Pattern,C_False,C_True); \
DII_empty(dii)?DII_drop(dii),C_False:C_True; DII_next(dii))
#define DII_SFORALL_R(dii,Path,Pattern) \
for (dii = DII_make(Path,Pattern,C_True,C_True); \
DII_empty(dii)?DII_drop(dii),C_False:C_True; DII_next(dii))
#ifdef __cplusplus
}
#endif
#endif
|