added QSE_FIO_TEMPORARY.

added qse_rand31()
fixed a minor bug in handling QSE_FMTINTMAX_ZEROLEAD
This commit is contained in:
hyung-hwan 2011-11-16 15:18:46 +00:00
parent e15fcd0c14
commit df28fde9ef
18 changed files with 645 additions and 302 deletions

View File

@ -113,4 +113,13 @@ void qse_qsort (
void* ctx void* ctx
); );
/**
* The qse_rand31() function implements Park-Miller's minimal standard
* 32 bit pseudo-random number generator.
*/
qse_uint32_t qse_rand31 (
qse_uint32_t seed
);
#endif #endif

View File

@ -39,8 +39,12 @@ enum qse_fio_open_flag_t
/** treat the file name pointer as a handle pointer */ /** treat the file name pointer as a handle pointer */
QSE_FIO_HANDLE = (1 << 3), QSE_FIO_HANDLE = (1 << 3),
/** treate the file name pointer as a pointer to file name
* template to use when making a temporary file name */
QSE_FIO_TEMPORARY = (1 << 4),
/** don't close an I/O handle in qse_fio_fini() and qse_fio_close() */ /** don't close an I/O handle in qse_fio_fini() and qse_fio_close() */
QSE_FIO_NOCLOSE = (1 << 4), QSE_FIO_NOCLOSE = (1 << 5),
/* normal open flags */ /* normal open flags */
QSE_FIO_READ = (1 << 8), QSE_FIO_READ = (1 << 8),
@ -58,10 +62,11 @@ enum qse_fio_open_flag_t
/* for WIN32 only. harmless(no effect) when used on other platforms */ /* for WIN32 only. harmless(no effect) when used on other platforms */
QSE_FIO_NOSHRD = (1 << 24), QSE_FIO_NOSHRD = (1 << 24),
QSE_FIO_NOSHWR = (1 << 25), QSE_FIO_NOSHWR = (1 << 25),
QSE_FIO_NOSHDL = (1 << 26),
/* hints to OS. harmless(no effect) when used on unsupported platforms */ /* hints to OS. harmless(no effect) when used on unsupported platforms */
QSE_FIO_RANDOM = (1 << 26), /* hint that access be random */ QSE_FIO_RANDOM = (1 << 27), /* hint that access be random */
QSE_FIO_SEQUENTIAL = (1 << 27) /* hint that access is sequential */ QSE_FIO_SEQUENTIAL = (1 << 28) /* hint that access is sequential */
}; };
enum qse_fio_std_t enum qse_fio_std_t
@ -150,6 +155,16 @@ QSE_DEFINE_COMMON_FUNCTIONS (fio)
* The qse_fio_open() function opens a file. * The qse_fio_open() function opens a file.
* To open a file, you should set the flags with at least one of * To open a file, you should set the flags with at least one of
* QSE_FIO_READ, QSE_FIO_WRITE, QSE_FIO_APPEND. * QSE_FIO_READ, QSE_FIO_WRITE, QSE_FIO_APPEND.
*
* If the #QSE_FIO_HANDLE flag is set, the @a path parameter is interpreted
* as a pointer to qse_fio_hnd_t.
*
* If the #QSE_FIO_TEMPORARY flag is set, the @a path parameter is
* interpreted as a path name template and an actual file name to open
* is internally generated using the template. The @a path parameter
* is filled with the last actual path name attempted when the function
* returns. So, you must not pass a constant string to the @a path
* parameter when #QSE_FIO_TEMPORARY is set.
*/ */
qse_fio_t* qse_fio_open ( qse_fio_t* qse_fio_open (
qse_mmgr_t* mmgr, qse_mmgr_t* mmgr,

View File

@ -67,6 +67,16 @@ enum qse_fmtintmax_flag_t
#define QSE_FMTINTMAX_FILLRIGHT QSE_FMTINTMAX_FILLRIGHT #define QSE_FMTINTMAX_FILLRIGHT QSE_FMTINTMAX_FILLRIGHT
#define QSE_FMTINTMAX_FILLCENTER QSE_FMTINTMAX_FILLCENTER #define QSE_FMTINTMAX_FILLCENTER QSE_FMTINTMAX_FILLCENTER
#define QSE_FMTUINTMAX_NOTRUNC QSE_FMTINTMAX_NOTRUNC
#define QSE_FMTUINTMAX_NONULL QSE_FMTINTMAX_NONULL
#define QSE_FMTUINTMAX_NOZERO QSE_FMTINTMAX_NOZERO
#define QSE_FMTUINTMAX_ZEROLEAD QSE_FMTINTMAX_ZEROLEAD
#define QSE_FMTUINTMAX_UPPERCASE QSE_FMTINTMAX_UPPERCASE
#define QSE_FMTUINTMAX_PLUSSIGN QSE_FMTINTMAX_PLUSSIGN
#define QSE_FMTUINTMAX_EMPTYSIGN QSE_FMTINTMAX_EMPTYSIGN
#define QSE_FMTUINTMAX_FILLRIGHT QSE_FMTINTMAX_FILLRIGHT
#define QSE_FMTUINTMAX_FILLCENTER QSE_FMTINTMAX_FILLCENTER
#define QSE_FMTINTMAXTOMBS_NOTRUNC QSE_FMTINTMAX_NOTRUNC #define QSE_FMTINTMAXTOMBS_NOTRUNC QSE_FMTINTMAX_NOTRUNC
#define QSE_FMTINTMAXTOMBS_NONULL QSE_FMTINTMAX_NONULL #define QSE_FMTINTMAXTOMBS_NONULL QSE_FMTINTMAX_NONULL
#define QSE_FMTINTMAXTOMBS_NOZERO QSE_FMTINTMAX_NOZERO #define QSE_FMTINTMAXTOMBS_NOZERO QSE_FMTINTMAX_NOZERO
@ -77,6 +87,16 @@ enum qse_fmtintmax_flag_t
#define QSE_FMTINTMAXTOMBS_FILLRIGHT QSE_FMTINTMAX_FILLRIGHT #define QSE_FMTINTMAXTOMBS_FILLRIGHT QSE_FMTINTMAX_FILLRIGHT
#define QSE_FMTINTMAXTOMBS_FILLCENTER QSE_FMTINTMAX_FILLCENTER #define QSE_FMTINTMAXTOMBS_FILLCENTER QSE_FMTINTMAX_FILLCENTER
#define QSE_FMTUINTMAXTOMBS_NOTRUNC QSE_FMTINTMAX_NOTRUNC
#define QSE_FMTUINTMAXTOMBS_NONULL QSE_FMTINTMAX_NONULL
#define QSE_FMTUINTMAXTOMBS_NOZERO QSE_FMTINTMAX_NOZERO
#define QSE_FMTUINTMAXTOMBS_ZEROLEAD QSE_FMTINTMAX_ZEROLEAD
#define QSE_FMTUINTMAXTOMBS_UPPERCASE QSE_FMTINTMAX_UPPERCASE
#define QSE_FMTUINTMAXTOMBS_PLUSSIGN QSE_FMTINTMAX_PLUSSIGN
#define QSE_FMTUINTMAXTOMBS_EMPTYSIGN QSE_FMTINTMAX_EMPTYSIGN
#define QSE_FMTUINTMAXTOMBS_FILLRIGHT QSE_FMTINTMAX_FILLRIGHT
#define QSE_FMTUINTMAXTOMBS_FILLCENTER QSE_FMTINTMAX_FILLCENTER
#define QSE_FMTINTMAXTOWCS_NOTRUNC QSE_FMTINTMAX_NOTRUNC #define QSE_FMTINTMAXTOWCS_NOTRUNC QSE_FMTINTMAX_NOTRUNC
#define QSE_FMTINTMAXTOWCS_NONULL QSE_FMTINTMAX_NONULL #define QSE_FMTINTMAXTOWCS_NONULL QSE_FMTINTMAX_NONULL
#define QSE_FMTINTMAXTOWCS_NOZERO QSE_FMTINTMAX_NOZERO #define QSE_FMTINTMAXTOWCS_NOZERO QSE_FMTINTMAX_NOZERO
@ -87,6 +107,16 @@ enum qse_fmtintmax_flag_t
#define QSE_FMTINTMAXTOWCS_FILLRIGHT QSE_FMTINTMAX_FILLRIGHT #define QSE_FMTINTMAXTOWCS_FILLRIGHT QSE_FMTINTMAX_FILLRIGHT
#define QSE_FMTINTMAXTOWCS_FILLCENTER QSE_FMTINTMAX_FILLCENTER #define QSE_FMTINTMAXTOWCS_FILLCENTER QSE_FMTINTMAX_FILLCENTER
#define QSE_FMTUINTMAXTOWCS_NOTRUNC QSE_FMTINTMAX_NOTRUNC
#define QSE_FMTUINTMAXTOWCS_NONULL QSE_FMTINTMAX_NONULL
#define QSE_FMTUINTMAXTOWCS_NOZERO QSE_FMTINTMAX_NOZERO
#define QSE_FMTUINTMAXTOWCS_ZEROLEAD QSE_FMTINTMAX_ZEROLEAD
#define QSE_FMTUINTMAXTOWCS_UPPERCASE QSE_FMTINTMAX_UPPERCASE
#define QSE_FMTUINTMAXTOWCS_PLUSSIGN QSE_FMTINTMAX_PLUSSIGN
#define QSE_FMTUINTMAXTOWCS_EMPTYSIGN QSE_FMTINTMAX_EMPTYSIGN
#define QSE_FMTUINTMAXTOWCS_FILLRIGHT QSE_FMTINTMAX_FILLRIGHT
#define QSE_FMTUINTMAXTOWCS_FILLCENTER QSE_FMTINTMAX_FILLCENTER
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
@ -111,6 +141,12 @@ extern "C" {
* - If neither #QSE_FMTINTMAXTOMBS_FILLRIGHT nor #QSE_FMTINTMAXTOMBS_FILLCENTER * - If neither #QSE_FMTINTMAXTOMBS_FILLRIGHT nor #QSE_FMTINTMAXTOMBS_FILLCENTER
* , slots before the formatting string are filled. * , slots before the formatting string are filled.
* *
* The @a precision parameter specified the minimum number of digits to
* produce from the @ value. If @a value produces fewer digits than
* @a precision, the actual digits are padded with '0' to meet the precision
* requirement. You can pass a negative number if you don't wish to specify
* precision.
*
* The terminating null is not added if #QSE_FMTINTMAXTOMBS_NONULL is set; * The terminating null is not added if #QSE_FMTINTMAXTOMBS_NONULL is set;
* The #QSE_FMTINTMAXTOMBS_UPPERCASE flag indicates that the function should * The #QSE_FMTINTMAXTOMBS_UPPERCASE flag indicates that the function should
* use the uppercase letter for a alphabetic digit; * use the uppercase letter for a alphabetic digit;
@ -118,6 +154,11 @@ extern "C" {
* The #QSE_FMTINTMAXTOMBS_PLUSSIGN flag and #QSE_FMTINTMAXTOMBS_EMPTYSIGN * The #QSE_FMTINTMAXTOMBS_PLUSSIGN flag and #QSE_FMTINTMAXTOMBS_EMPTYSIGN
* ensures that the plus sign and a space is added for a positive integer * ensures that the plus sign and a space is added for a positive integer
* including 0 respectively. * including 0 respectively.
* The #QSE_FMTINTMAXTOMBS_ZEROLEAD flag ensures that the numeric string
* begins with '0' before applying the prefix.
* You can set the #QSE_FMTINTMAXTOMBS_NOZERO flag if you want the value of
* 0 to produce nothing. If both #QSE_FMTINTMAXTOMBS_NOZERO and
* #QSE_FMTINTMAXTOMBS_ZEROLEAD are specified, '0' is still produced.
* *
* If @a prefix is not #QSE_NULL, it is inserted before the digits. * If @a prefix is not #QSE_NULL, it is inserted before the digits.
* *
@ -159,6 +200,12 @@ int qse_fmtintmaxtombs (
* are filled. * are filled.
* - If neither #QSE_FMTINTMAXTOWCS_FILLRIGHT nor #QSE_FMTINTMAXTOWCS_FILLCENTER * - If neither #QSE_FMTINTMAXTOWCS_FILLRIGHT nor #QSE_FMTINTMAXTOWCS_FILLCENTER
* , slots before the formatting string are filled. * , slots before the formatting string are filled.
*
* The @a precision parameter specified the minimum number of digits to
* produce from the @ value. If @a value produces fewer digits than
* @a precision, the actual digits are padded with '0' to meet the precision
* requirement. You can pass a negative number if don't wish to specify
* precision.
* *
* The terminating null is not added if #QSE_FMTINTMAXTOWCS_NONULL is set; * The terminating null is not added if #QSE_FMTINTMAXTOWCS_NONULL is set;
* The #QSE_FMTINTMAXTOWCS_UPPERCASE flag indicates that the function should * The #QSE_FMTINTMAXTOWCS_UPPERCASE flag indicates that the function should
@ -167,6 +214,11 @@ int qse_fmtintmaxtombs (
* The #QSE_FMTINTMAXTOWCS_PLUSSIGN flag and #QSE_FMTINTMAXTOWCS_EMPTYSIGN * The #QSE_FMTINTMAXTOWCS_PLUSSIGN flag and #QSE_FMTINTMAXTOWCS_EMPTYSIGN
* ensures that the plus sign and a space is added for a positive integer * ensures that the plus sign and a space is added for a positive integer
* including 0 respectively. * including 0 respectively.
* The #QSE_FMTINTMAXTOWCS_ZEROLEAD flag ensures that the numeric string
* begins with 0 before applying the prefix.
* You can set the #QSE_FMTINTMAXTOWCS_NOZERO flag if you want the value of
* 0 to produce nothing. If both #QSE_FMTINTMAXTOWCS_NOZERO and
* #QSE_FMTINTMAXTOWCS_ZEROLEAD are specified, '0' is still produced.
* *
* If @a prefix is not #QSE_NULL, it is inserted before the digits. * If @a prefix is not #QSE_NULL, it is inserted before the digits.
* *

View File

@ -33,8 +33,10 @@
enum qse_sio_open_flag_t enum qse_sio_open_flag_t
{ {
QSE_SIO_HANDLE = QSE_FIO_HANDLE, QSE_SIO_HANDLE = QSE_FIO_HANDLE,
QSE_SIO_NOCLOSE = QSE_FIO_NOCLOSE, QSE_SIO_TEMPORARY = QSE_FIO_TEMPORARY,
QSE_SIO_IGNOREMBWCERR = QSE_FIO_IGNOREMBWCERR, QSE_SIO_IGNOREMBWCERR = QSE_FIO_IGNOREMBWCERR,
QSE_SIO_NOCLOSE = QSE_FIO_NOCLOSE,
QSE_SIO_READ = QSE_FIO_READ, QSE_SIO_READ = QSE_FIO_READ,
QSE_SIO_WRITE = QSE_FIO_WRITE, QSE_SIO_WRITE = QSE_FIO_WRITE,
@ -48,6 +50,7 @@ enum qse_sio_open_flag_t
QSE_SIO_NOSHRD = QSE_FIO_NOSHRD, QSE_SIO_NOSHRD = QSE_FIO_NOSHRD,
QSE_SIO_NOSHWR = QSE_FIO_NOSHWR, QSE_SIO_NOSHWR = QSE_FIO_NOSHWR,
QSE_SIO_NOSHDL = QSE_FIO_NOSHDL,
QSE_SIO_RANDOM = QSE_FIO_RANDOM, QSE_SIO_RANDOM = QSE_FIO_RANDOM,
QSE_SIO_SEQUENTIAL = QSE_FIO_SEQUENTIAL QSE_SIO_SEQUENTIAL = QSE_FIO_SEQUENTIAL

View File

@ -325,26 +325,42 @@ static int print_expr (qse_awk_t* awk, qse_awk_nde_t* nde)
for (i = 0; i < len; i++) for (i = 0; i < len; i++)
{ {
/* TODO: maybe more de-escaping?? */ /* TODO: maybe more de-escaping?? */
if (ptr[i] == QSE_T('\n')) switch (ptr[i])
PUT_SRCSTR (awk, QSE_T("\\n")); {
else if (ptr[i] == QSE_T('\r')) case QSE_T('\n'):
PUT_SRCSTR (awk, QSE_T("\\r")); PUT_SRCSTR (awk, QSE_T("\\n"));
else if (ptr[i] == QSE_T('\f')) break;
PUT_SRCSTR (awk, QSE_T("\\f")); case QSE_T('\r'):
else if (ptr[i] == QSE_T('\b')) PUT_SRCSTR (awk, QSE_T("\\r"));
PUT_SRCSTR (awk, QSE_T("\\b")); break;
else if (ptr[i] == QSE_T('\v')) case QSE_T('\t'):
PUT_SRCSTR (awk, QSE_T("\\v")); PUT_SRCSTR (awk, QSE_T("\\t"));
else if (ptr[i] == QSE_T('\a')) break;
PUT_SRCSTR (awk, QSE_T("\\a")); case QSE_T('\f'):
else if (ptr[i] == QSE_T('\0')) PUT_SRCSTR (awk, QSE_T("\\f"));
PUT_SRCSTR (awk, QSE_T("\\0")); break;
else if (ptr[i] == QSE_T('\"')) case QSE_T('\b'):
PUT_SRCSTR (awk, QSE_T("\\\"")); PUT_SRCSTR (awk, QSE_T("\\b"));
else if (ptr[i] == QSE_T('\\')) break;
PUT_SRCSTR (awk, QSE_T("\\\\")); case QSE_T('\v'):
else PUT_SRCSTR (awk, QSE_T("\\v"));
PUT_SRCSTRX (awk, &ptr[i], 1); break;
case QSE_T('\a'):
PUT_SRCSTR (awk, QSE_T("\\a"));
break;
case QSE_T('\0'):
PUT_SRCSTR (awk, QSE_T("\\0"));
break;
case QSE_T('\"'):
PUT_SRCSTR (awk, QSE_T("\\\""));
break;
case QSE_T('\\'):
PUT_SRCSTR (awk, QSE_T("\\\\"));
break;
default:
PUT_SRCSTRX (awk, &ptr[i], 1);
break;
}
} }
PUT_SRCSTR (awk, QSE_T("\"")); PUT_SRCSTR (awk, QSE_T("\""));
break; break;

View File

@ -19,6 +19,7 @@ noinst_HEADERS = \
tre-stack.h tre-stack.h
libqsecmn_la_SOURCES = \ libqsecmn_la_SOURCES = \
alg-rand.c \
alg-search.c \ alg-search.c \
alg-sort.c \ alg-sort.c \
assert.c \ assert.c \

View File

@ -75,19 +75,19 @@ am__base_list = \
am__installdirs = "$(DESTDIR)$(libdir)" am__installdirs = "$(DESTDIR)$(libdir)"
LTLIBRARIES = $(lib_LTLIBRARIES) LTLIBRARIES = $(lib_LTLIBRARIES)
libqsecmn_la_DEPENDENCIES = libqsecmn_la_DEPENDENCIES =
am_libqsecmn_la_OBJECTS = alg-search.lo alg-sort.lo assert.lo chr.lo \ am_libqsecmn_la_OBJECTS = alg-rand.lo alg-search.lo alg-sort.lo \
chr-cnv.lo dll.lo env.lo gdl.lo htb.lo lda.lo fio.lo fma.lo \ assert.lo chr.lo chr-cnv.lo dll.lo env.lo gdl.lo htb.lo lda.lo \
fmt.lo main.lo mem.lo oht.lo opt.lo path-basename.lo \ fio.lo fma.lo fmt.lo main.lo mem.lo oht.lo opt.lo \
path-canon.lo pio.lo pma.lo rbt.lo rex.lo sio.lo sll.lo \ path-basename.lo path-canon.lo pio.lo pma.lo rbt.lo rex.lo \
stdio.lo str-beg.lo str-cat.lo str-chr.lo str-cnv.lo \ sio.lo sll.lo stdio.lo str-beg.lo str-cat.lo str-chr.lo \
str-cmp.lo str-cpy.lo str-del.lo str-dup.lo str-dynm.lo \ str-cnv.lo str-cmp.lo str-cpy.lo str-del.lo str-dup.lo \
str-dynw.lo str-end.lo str-excl.lo str-fcpy.lo str-fnmat.lo \ str-dynm.lo str-dynw.lo str-end.lo str-excl.lo str-fcpy.lo \
str-incl.lo str-len.lo str-pac.lo str-pbrk.lo str-put.lo \ str-fnmat.lo str-incl.lo str-len.lo str-pac.lo str-pbrk.lo \
str-rev.lo str-rot.lo str-set.lo str-spl.lo str-spn.lo \ str-put.lo str-rev.lo str-rot.lo str-set.lo str-spl.lo \
str-str.lo str-subst.lo str-tok.lo str-trm.lo str-word.lo \ str-spn.lo str-str.lo str-subst.lo str-tok.lo str-trm.lo \
time.lo tio.lo tio-get.lo tio-put.lo tre.lo tre-ast.lo \ str-word.lo time.lo tio.lo tio-get.lo tio-put.lo tre.lo \
tre-compile.lo tre-match-backtrack.lo tre-match-parallel.lo \ tre-ast.lo tre-compile.lo tre-match-backtrack.lo \
tre-parse.lo tre-stack.lo utf8.lo xma.lo tre-match-parallel.lo tre-parse.lo tre-stack.lo utf8.lo xma.lo
libqsecmn_la_OBJECTS = $(am_libqsecmn_la_OBJECTS) libqsecmn_la_OBJECTS = $(am_libqsecmn_la_OBJECTS)
libqsecmn_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ libqsecmn_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
@ -288,6 +288,7 @@ noinst_HEADERS = \
tre-stack.h tre-stack.h
libqsecmn_la_SOURCES = \ libqsecmn_la_SOURCES = \
alg-rand.c \
alg-search.c \ alg-search.c \
alg-sort.c \ alg-sort.c \
assert.c \ assert.c \
@ -441,6 +442,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Mmgr.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Mmgr.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/StdMmgr.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/StdMmgr.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alg-rand.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alg-search.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alg-search.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alg-sort.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alg-sort.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assert.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assert.Plo@am__quote@

23
qse/lib/cmn/alg-rand.c Normal file
View File

@ -0,0 +1,23 @@
#include <qse/cmn/alg.h>
/* Park-Miller "minimal standard" 31 bit
* pseudo-random number generator, implemented
* with David G. Carta's optimisation: with
* 32 bit math and wihtout division.
*/
qse_uint32_t qse_rand31 (qse_uint32_t seed)
{
qse_uint32_t hi, lo;
if (seed == 0) seed++;
lo = 16807 * (seed & 0xFFFF);
hi = 16807 * (seed >> 16);
lo += (hi & 0x7FFF) << 16;
lo += hi >> 15;
if (lo > 0x7FFFFFFFul) lo -= 0x7FFFFFFFul;
return lo;
}

View File

@ -20,6 +20,9 @@
#include <qse/cmn/fio.h> #include <qse/cmn/fio.h>
#include <qse/cmn/str.h> #include <qse/cmn/str.h>
#include <qse/cmn/fmt.h>
#include <qse/cmn/alg.h>
#include <qse/cmn/time.h>
#include "mem.h" #include "mem.h"
#if defined(_WIN32) #if defined(_WIN32)
@ -90,15 +93,68 @@ int qse_fio_init (
{ {
qse_fio_hnd_t handle; qse_fio_hnd_t handle;
qse_uint32_t temp_no;
qse_char_t* temp_ptr;
qse_size_t temp_tries;
if (mmgr == QSE_NULL) mmgr = QSE_MMGR_GETDFL(); if (mmgr == QSE_NULL) mmgr = QSE_MMGR_GETDFL();
QSE_MEMSET (fio, 0, QSE_SIZEOF(*fio)); QSE_MEMSET (fio, 0, QSE_SIZEOF(*fio));
fio->mmgr = mmgr; fio->mmgr = mmgr;
/* store the flags for later use though only OS/2 needs /* Store the flags for later use though only OS/2 needs
* this at this moment */ * this at this moment */
fio->flags = flags; fio->flags = flags;
if (flags & QSE_FIO_TEMPORARY)
{
qse_ntime_t now;
QSE_ASSERTX (
(flags & QSE_FIO_HANDLE) == 0,
"QSE_FIO_TEMPORARY and QSE_FIO_HANDLE are mutually exclusive"
);
temp_no = 0;
for (temp_ptr = path; *temp_ptr; temp_ptr++)
temp_no += *temp_ptr;
/* The path name template must be at least 4 characters long
* excluding the terminating null. this function fails if not */
if (temp_ptr - path < 4) return -1;
qse_gettime (&now);
temp_no += (now & 0xFFFFFFFFlu);
temp_tries = 0;
temp_ptr -= 4;
retry_temporary:
temp_tries++;
/* Fails after 5000 tries. 5000 randomly chosen */
if (temp_tries > 5000) return -1;
/* Generate the next random number to use to make a
* new path name */
temp_no = qse_rand31 (temp_no);
/*
* You must not pass a constant string for a path name
* when QSE_FIO_TEMPORARY is set, because it changes
* the path name with a random number generated
*/
qse_fmtuintmax (
temp_ptr,
4,
temp_no % 0x10000,
16 | QSE_FMTUINTMAX_NOTRUNC | QSE_FMTUINTMAX_NONULL,
4,
QSE_T('\0'),
QSE_NULL
);
}
#if defined(_WIN32) #if defined(_WIN32)
if (flags & QSE_FIO_HANDLE) if (flags & QSE_FIO_HANDLE)
{ {
@ -107,7 +163,7 @@ int qse_fio_init (
else else
{ {
DWORD desired_access = 0; DWORD desired_access = 0;
DWORD share_mode = FILE_SHARE_READ | FILE_SHARE_WRITE; DWORD share_mode = FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE;
DWORD creation_disposition = 0; DWORD creation_disposition = 0;
DWORD flag_and_attr = FILE_ATTRIBUTE_NORMAL; DWORD flag_and_attr = FILE_ATTRIBUTE_NORMAL;
@ -141,6 +197,8 @@ int qse_fio_init (
share_mode &= ~FILE_SHARE_READ; share_mode &= ~FILE_SHARE_READ;
if (flags & QSE_FIO_NOSHWR) if (flags & QSE_FIO_NOSHWR)
share_mode &= ~FILE_SHARE_WRITE; share_mode &= ~FILE_SHARE_WRITE;
if (flags & QSE_FIO_NOSHDL)
share_mode &= ~FILE_SHARE_DELETE;
if (!(mode & QSE_FIO_WUSR)) if (!(mode & QSE_FIO_WUSR))
flag_and_attr = FILE_ATTRIBUTE_READONLY; flag_and_attr = FILE_ATTRIBUTE_READONLY;
@ -162,7 +220,11 @@ int qse_fio_init (
creation_disposition, flag_and_attr, 0 creation_disposition, flag_and_attr, 0
); );
} }
if (handle == INVALID_HANDLE_VALUE) return -1; if (handle == INVALID_HANDLE_VALUE)
{
if (flags & QSE_FIO_TEMPORARY) goto retry_temporary;
return -1;
}
/* some special check */ /* some special check */
if (GetFileType(handle) == FILE_TYPE_UNKNOWN) if (GetFileType(handle) == FILE_TYPE_UNKNOWN)
@ -258,7 +320,11 @@ int qse_fio_init (
0L 0L
); );
if (ret != NO_ERROR) return -1; if (ret != NO_ERROR)
{
if (flags & QSE_FIO_TEMPORARY) goto retry_temporary;
return -1;
}
} }
#elif defined(__DOS__) #elif defined(__DOS__)
@ -308,7 +374,11 @@ int qse_fio_init (
oflags, oflags,
permission permission
); );
if (handle <= -1) return -1; if (handle <= -1)
{
if (flags & QSE_FIO_TEMPORARY) goto retry_temporary;
return -1;
}
} }
#else #else
@ -367,7 +437,11 @@ int qse_fio_init (
handle = QSE_OPEN (path_mb, desired_access, mode); handle = QSE_OPEN (path_mb, desired_access, mode);
} }
if (handle == -1) return -1; if (handle == -1)
{
if (flags & QSE_FIO_TEMPORARY) goto retry_temporary;
return -1;
}
/* set some file access hints */ /* set some file access hints */
#if defined(POSIX_FADV_RANDOM) #if defined(POSIX_FADV_RANDOM)

View File

@ -60,14 +60,16 @@ static int fmt_unsigned_to_mbs (
} }
else else
{ {
qse_uintmax_t v = value;
/* store the resulting numeric string into 'tmp' first */ /* store the resulting numeric string into 'tmp' first */
p = tmp; p = tmp;
do do
{ {
*p++ = xbasestr[value % base]; *p++ = xbasestr[v % base];
value /= base; v /= base;
} }
while (value > 0); while (v > 0);
/* reslen is the length of the resulting string without padding. */ /* reslen is the length of the resulting string without padding. */
reslen = (int)(p - tmp); reslen = (int)(p - tmp);
@ -87,8 +89,10 @@ static int fmt_unsigned_to_mbs (
else else
{ {
preczero = 0; preczero = 0;
if (base_and_flags & QSE_FMTINTMAXTOMBS_ZEROLEAD) if ((base_and_flags & QSE_FMTINTMAXTOMBS_ZEROLEAD) && value != 0)
{ {
/* if value is zero, 0 is emitted from it.
* so ZEROLEAD don't need to add another 0. */
preczero++; preczero++;
reslen++; reslen++;
} }
@ -319,14 +323,16 @@ static int fmt_unsigned_to_wcs (
} }
else else
{ {
qse_uintmax_t v = value;
/* store the resulting numeric string into 'tmp' first */ /* store the resulting numeric string into 'tmp' first */
p = tmp; p = tmp;
do do
{ {
*p++ = xbasestr[value % base]; *p++ = xbasestr[v % base];
value /= base; v /= base;
} }
while (value > 0); while (v > 0);
/* reslen is the length of the resulting string without padding. */ /* reslen is the length of the resulting string without padding. */
reslen = (int)(p - tmp); reslen = (int)(p - tmp);
@ -346,8 +352,10 @@ static int fmt_unsigned_to_wcs (
else else
{ {
preczero = 0; preczero = 0;
if (base_and_flags & QSE_FMTINTMAXTOWCS_ZEROLEAD) if ((base_and_flags & QSE_FMTINTMAXTOWCS_ZEROLEAD) && value != 0)
{ {
/* if value is zero, 0 is emitted from it.
* so ZEROLEAD don't need to add another 0. */
preczero++; preczero++;
reslen++; reslen++;
} }

View File

@ -724,11 +724,11 @@ qse_dir_ent_t* qse_dir_read (qse_dir_t* dir, int flags)
QSE_SECNSEC_TO_MSEC(st.st_ctimespec.tv_sec,st.st_ctimespec.tv_nsec); QSE_SECNSEC_TO_MSEC(st.st_ctimespec.tv_sec,st.st_ctimespec.tv_nsec);
#else #else
#if defined(HAVE_STRUCT_STAT_ST_BIRTHTIME) #if defined(HAVE_STRUCT_STAT_ST_BIRTHTIME)
dir->ent.time.create = st.st_birthtime * QSE_MSEC_PER_SEC; dir->ent.time.create = st.st_birthtime * QSE_MSECS_PER_SEC;
#endif #endif
dir->ent.time.access = st.st_atime * QSE_MSEC_PER_SEC; dir->ent.time.access = st.st_atime * QSE_MSECS_PER_SEC;
dir->ent.time.modify = st.st_mtime * QSE_MSEC_PER_SEC; dir->ent.time.modify = st.st_mtime * QSE_MSECS_PER_SEC;
dir->ent.time.change = st.st_ctime * QSE_MSEC_PER_SEC; dir->ent.time.change = st.st_ctime * QSE_MSECS_PER_SEC;
#endif #endif
dir->ent.flags |= QSE_DIR_ENT_TIME; dir->ent.flags |= QSE_DIR_ENT_TIME;
} }

View File

@ -6,7 +6,7 @@ AM_CPPFLAGS = \
-I$(includedir) -I$(includedir)
bin_PROGRAMS = xma fma pma chr str sll dll lda oht htb rbt fio pio sio time main main2 rex01 env path01 tre01 fmt01 fmt02 bin_PROGRAMS = xma fma pma chr str sll dll lda oht htb rbt fio01 fio02 pio sio time main main2 rex01 env path01 tre01 fmt01 fmt02
LDFLAGS = -L../../lib/cmn LDFLAGS = -L../../lib/cmn
LDADD = -lqsecmn LDADD = -lqsecmn
@ -22,7 +22,8 @@ lda_SOURCES = lda.c
oht_SOURCES = oht.c oht_SOURCES = oht.c
htb_SOURCES = htb.c htb_SOURCES = htb.c
rbt_SOURCES = rbt.c rbt_SOURCES = rbt.c
fio_SOURCES = fio.c fio01_SOURCES = fio01.c
fio02_SOURCES = fio02.c
pio_SOURCES = pio.c pio_SOURCES = pio.c
sio_SOURCES = sio.c sio_SOURCES = sio.c
time_SOURCES = time.c time_SOURCES = time.c

View File

@ -36,10 +36,10 @@ build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
bin_PROGRAMS = xma$(EXEEXT) fma$(EXEEXT) pma$(EXEEXT) chr$(EXEEXT) \ bin_PROGRAMS = xma$(EXEEXT) fma$(EXEEXT) pma$(EXEEXT) chr$(EXEEXT) \
str$(EXEEXT) sll$(EXEEXT) dll$(EXEEXT) lda$(EXEEXT) \ str$(EXEEXT) sll$(EXEEXT) dll$(EXEEXT) lda$(EXEEXT) \
oht$(EXEEXT) htb$(EXEEXT) rbt$(EXEEXT) fio$(EXEEXT) \ oht$(EXEEXT) htb$(EXEEXT) rbt$(EXEEXT) fio01$(EXEEXT) \
pio$(EXEEXT) sio$(EXEEXT) time$(EXEEXT) main$(EXEEXT) \ fio02$(EXEEXT) pio$(EXEEXT) sio$(EXEEXT) time$(EXEEXT) \
main2$(EXEEXT) rex01$(EXEEXT) env$(EXEEXT) path01$(EXEEXT) \ main$(EXEEXT) main2$(EXEEXT) rex01$(EXEEXT) env$(EXEEXT) \
tre01$(EXEEXT) fmt01$(EXEEXT) fmt02$(EXEEXT) path01$(EXEEXT) tre01$(EXEEXT) fmt01$(EXEEXT) fmt02$(EXEEXT)
subdir = samples/cmn subdir = samples/cmn
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@ -68,10 +68,14 @@ am_env_OBJECTS = env.$(OBJEXT)
env_OBJECTS = $(am_env_OBJECTS) env_OBJECTS = $(am_env_OBJECTS)
env_LDADD = $(LDADD) env_LDADD = $(LDADD)
env_DEPENDENCIES = env_DEPENDENCIES =
am_fio_OBJECTS = fio.$(OBJEXT) am_fio01_OBJECTS = fio01.$(OBJEXT)
fio_OBJECTS = $(am_fio_OBJECTS) fio01_OBJECTS = $(am_fio01_OBJECTS)
fio_LDADD = $(LDADD) fio01_LDADD = $(LDADD)
fio_DEPENDENCIES = fio01_DEPENDENCIES =
am_fio02_OBJECTS = fio02.$(OBJEXT)
fio02_OBJECTS = $(am_fio02_OBJECTS)
fio02_LDADD = $(LDADD)
fio02_DEPENDENCIES =
am_fma_OBJECTS = fma.$(OBJEXT) am_fma_OBJECTS = fma.$(OBJEXT)
fma_OBJECTS = $(am_fma_OBJECTS) fma_OBJECTS = $(am_fma_OBJECTS)
fma_LDADD = $(LDADD) fma_LDADD = $(LDADD)
@ -161,19 +165,20 @@ CCLD = $(CC)
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
$(LDFLAGS) -o $@ $(LDFLAGS) -o $@
SOURCES = $(chr_SOURCES) $(dll_SOURCES) $(env_SOURCES) $(fio_SOURCES) \ SOURCES = $(chr_SOURCES) $(dll_SOURCES) $(env_SOURCES) \
$(fma_SOURCES) $(fmt01_SOURCES) $(fmt02_SOURCES) \ $(fio01_SOURCES) $(fio02_SOURCES) $(fma_SOURCES) \
$(htb_SOURCES) $(lda_SOURCES) $(main_SOURCES) $(main2_SOURCES) \ $(fmt01_SOURCES) $(fmt02_SOURCES) $(htb_SOURCES) \
$(oht_SOURCES) $(path01_SOURCES) $(pio_SOURCES) $(pma_SOURCES) \ $(lda_SOURCES) $(main_SOURCES) $(main2_SOURCES) $(oht_SOURCES) \
$(rbt_SOURCES) $(rex01_SOURCES) $(sio_SOURCES) $(sll_SOURCES) \ $(path01_SOURCES) $(pio_SOURCES) $(pma_SOURCES) $(rbt_SOURCES) \
$(str_SOURCES) $(time_SOURCES) $(tre01_SOURCES) $(xma_SOURCES) $(rex01_SOURCES) $(sio_SOURCES) $(sll_SOURCES) $(str_SOURCES) \
$(time_SOURCES) $(tre01_SOURCES) $(xma_SOURCES)
DIST_SOURCES = $(chr_SOURCES) $(dll_SOURCES) $(env_SOURCES) \ DIST_SOURCES = $(chr_SOURCES) $(dll_SOURCES) $(env_SOURCES) \
$(fio_SOURCES) $(fma_SOURCES) $(fmt01_SOURCES) \ $(fio01_SOURCES) $(fio02_SOURCES) $(fma_SOURCES) \
$(fmt02_SOURCES) $(htb_SOURCES) $(lda_SOURCES) $(main_SOURCES) \ $(fmt01_SOURCES) $(fmt02_SOURCES) $(htb_SOURCES) \
$(main2_SOURCES) $(oht_SOURCES) $(path01_SOURCES) \ $(lda_SOURCES) $(main_SOURCES) $(main2_SOURCES) $(oht_SOURCES) \
$(pio_SOURCES) $(pma_SOURCES) $(rbt_SOURCES) $(rex01_SOURCES) \ $(path01_SOURCES) $(pio_SOURCES) $(pma_SOURCES) $(rbt_SOURCES) \
$(sio_SOURCES) $(sll_SOURCES) $(str_SOURCES) $(time_SOURCES) \ $(rex01_SOURCES) $(sio_SOURCES) $(sll_SOURCES) $(str_SOURCES) \
$(tre01_SOURCES) $(xma_SOURCES) $(time_SOURCES) $(tre01_SOURCES) $(xma_SOURCES)
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@ -336,7 +341,8 @@ lda_SOURCES = lda.c
oht_SOURCES = oht.c oht_SOURCES = oht.c
htb_SOURCES = htb.c htb_SOURCES = htb.c
rbt_SOURCES = rbt.c rbt_SOURCES = rbt.c
fio_SOURCES = fio.c fio01_SOURCES = fio01.c
fio02_SOURCES = fio02.c
pio_SOURCES = pio.c pio_SOURCES = pio.c
sio_SOURCES = sio.c sio_SOURCES = sio.c
time_SOURCES = time.c time_SOURCES = time.c
@ -434,9 +440,12 @@ dll$(EXEEXT): $(dll_OBJECTS) $(dll_DEPENDENCIES)
env$(EXEEXT): $(env_OBJECTS) $(env_DEPENDENCIES) env$(EXEEXT): $(env_OBJECTS) $(env_DEPENDENCIES)
@rm -f env$(EXEEXT) @rm -f env$(EXEEXT)
$(LINK) $(env_OBJECTS) $(env_LDADD) $(LIBS) $(LINK) $(env_OBJECTS) $(env_LDADD) $(LIBS)
fio$(EXEEXT): $(fio_OBJECTS) $(fio_DEPENDENCIES) fio01$(EXEEXT): $(fio01_OBJECTS) $(fio01_DEPENDENCIES)
@rm -f fio$(EXEEXT) @rm -f fio01$(EXEEXT)
$(LINK) $(fio_OBJECTS) $(fio_LDADD) $(LIBS) $(LINK) $(fio01_OBJECTS) $(fio01_LDADD) $(LIBS)
fio02$(EXEEXT): $(fio02_OBJECTS) $(fio02_DEPENDENCIES)
@rm -f fio02$(EXEEXT)
$(LINK) $(fio02_OBJECTS) $(fio02_LDADD) $(LIBS)
fma$(EXEEXT): $(fma_OBJECTS) $(fma_DEPENDENCIES) fma$(EXEEXT): $(fma_OBJECTS) $(fma_DEPENDENCIES)
@rm -f fma$(EXEEXT) @rm -f fma$(EXEEXT)
$(LINK) $(fma_OBJECTS) $(fma_LDADD) $(LIBS) $(LINK) $(fma_OBJECTS) $(fma_LDADD) $(LIBS)
@ -504,7 +513,8 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chr.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chr.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dll.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dll.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/env.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/env.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fio.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fio01.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fio02.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fma.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fma.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fmt01.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fmt01.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fmt02.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fmt02.Po@am__quote@

93
qse/samples/cmn/fio02.c Normal file
View File

@ -0,0 +1,93 @@
#include <qse/cmn/fio.h>
#include <qse/cmn/stdio.h>
#include <string.h>
#include <locale.h>
#define R(f) \
do { \
qse_printf (QSE_T("== %s ==\n"), QSE_T(#f)); \
if (f() == -1) return -1; \
} while (0)
static int test1 (void)
{
qse_fio_t* fio;
qse_ssize_t n;
char x[] = "fio test";
char x2[] = "fio test2";
qse_fio_off_t off;
char buf[1000];
int i;
qse_char_t file[] = QSE_T("fio02-XXXX");
fio = qse_fio_open (
QSE_NULL,
0,
file,
QSE_FIO_CREATE | QSE_FIO_EXCLUSIVE | QSE_FIO_TEMPORARY | QSE_FIO_READ | QSE_FIO_WRITE,
QSE_FIO_RUSR|QSE_FIO_WUSR|QSE_FIO_RGRP|QSE_FIO_ROTH
);
if (fio == QSE_NULL)
{
qse_printf (QSE_T("cannot open file - last file tried [%s]\n"), file);
return -1;
}
qse_printf (QSE_T("file opened: [%s]\n"), file);
for (i = 0; i < 2; i++)
{
n = qse_fio_write (fio, x, qse_mbslen(x));
qse_printf (QSE_T("written %d bytes\n"), (int)n);
off = qse_fio_seek (fio, 0, QSE_FIO_CURRENT);
if (off == (qse_fio_off_t)-1)
{
qse_printf (QSE_T("failed to get file offset\n"));
}
else
{
qse_printf (QSE_T("file offset at %ld\n"), (long)off);
}
off = qse_fio_seek (fio, 0, QSE_FIO_BEGIN);
if (off == (qse_fio_off_t)-1)
{
qse_printf (QSE_T("failed to set file offset\n"));
}
else
{
qse_printf (QSE_T("moved file offset to %ld\n"), (long)off);
}
}
n = qse_fio_read (fio, buf, sizeof(buf));
qse_printf (QSE_T("read %d bytes \n"), (int)n);
if (n > 0)
{
#ifdef QSE_CHAR_IS_MCHAR
qse_printf (QSE_T("buf => [%.*s]\n"), (int)n, buf);
#else
qse_printf (QSE_T("buf => [%.*S]\n"), (int)n, buf);
#endif
}
qse_fio_close (fio);
return 0;
}
int main ()
{
setlocale (LC_ALL, "");
qse_printf (QSE_T("--------------------------------------------------------------------------------\n"));
qse_printf (QSE_T("Set the environment LANG to a Unicode locale such as UTF-8 if you see the illegal XXXXX errors. If you see such errors in Unicode locales, this program might be buggy. It is normal to see such messages in non-Unicode locales as it uses Unicode data\n"));
qse_printf (QSE_T("--------------------------------------------------------------------------------\n"));
R (test1);
return 0;
}

View File

@ -42,7 +42,7 @@ WVList
0 0
10 10
WPickList WPickList
70 71
11 11
MItem MItem
3 3
@ -91,8 +91,8 @@ WVList
0 0
22 22
MItem MItem
35 33
../../../../../lib/cmn/alg-search.c ../../../../../lib/cmn/alg-rand.c
23 23
WString WString
4 4
@ -109,8 +109,8 @@ WVList
0 0
26 26
MItem MItem
33 35
../../../../../lib/cmn/alg-sort.c ../../../../../lib/cmn/alg-search.c
27 27
WString WString
4 4
@ -127,8 +127,8 @@ WVList
0 0
30 30
MItem MItem
31 33
../../../../../lib/cmn/assert.c ../../../../../lib/cmn/alg-sort.c
31 31
WString WString
4 4
@ -145,8 +145,8 @@ WVList
0 0
34 34
MItem MItem
32 31
../../../../../lib/cmn/chr-cnv.c ../../../../../lib/cmn/assert.c
35 35
WString WString
4 4
@ -163,8 +163,8 @@ WVList
0 0
38 38
MItem MItem
28 32
../../../../../lib/cmn/chr.c ../../../../../lib/cmn/chr-cnv.c
39 39
WString WString
4 4
@ -182,7 +182,7 @@ WVList
42 42
MItem MItem
28 28
../../../../../lib/cmn/dll.c ../../../../../lib/cmn/chr.c
43 43
WString WString
4 4
@ -200,7 +200,7 @@ WVList
46 46
MItem MItem
28 28
../../../../../lib/cmn/env.c ../../../../../lib/cmn/dll.c
47 47
WString WString
4 4
@ -218,7 +218,7 @@ WVList
50 50
MItem MItem
28 28
../../../../../lib/cmn/fio.c ../../../../../lib/cmn/env.c
51 51
WString WString
4 4
@ -236,7 +236,7 @@ WVList
54 54
MItem MItem
28 28
../../../../../lib/cmn/fma.c ../../../../../lib/cmn/fio.c
55 55
WString WString
4 4
@ -254,7 +254,7 @@ WVList
58 58
MItem MItem
28 28
../../../../../lib/cmn/fmt.c ../../../../../lib/cmn/fma.c
59 59
WString WString
4 4
@ -272,7 +272,7 @@ WVList
62 62
MItem MItem
28 28
../../../../../lib/cmn/gdl.c ../../../../../lib/cmn/fmt.c
63 63
WString WString
4 4
@ -290,7 +290,7 @@ WVList
66 66
MItem MItem
28 28
../../../../../lib/cmn/htb.c ../../../../../lib/cmn/gdl.c
67 67
WString WString
4 4
@ -308,7 +308,7 @@ WVList
70 70
MItem MItem
28 28
../../../../../lib/cmn/lda.c ../../../../../lib/cmn/htb.c
71 71
WString WString
4 4
@ -325,8 +325,8 @@ WVList
0 0
74 74
MItem MItem
29 28
../../../../../lib/cmn/main.c ../../../../../lib/cmn/lda.c
75 75
WString WString
4 4
@ -343,8 +343,8 @@ WVList
0 0
78 78
MItem MItem
28 29
../../../../../lib/cmn/mem.c ../../../../../lib/cmn/main.c
79 79
WString WString
4 4
@ -362,7 +362,7 @@ WVList
82 82
MItem MItem
28 28
../../../../../lib/cmn/oht.c ../../../../../lib/cmn/mem.c
83 83
WString WString
4 4
@ -380,7 +380,7 @@ WVList
86 86
MItem MItem
28 28
../../../../../lib/cmn/opt.c ../../../../../lib/cmn/oht.c
87 87
WString WString
4 4
@ -397,8 +397,8 @@ WVList
0 0
90 90
MItem MItem
38 28
../../../../../lib/cmn/path-basename.c ../../../../../lib/cmn/opt.c
91 91
WString WString
4 4
@ -415,8 +415,8 @@ WVList
0 0
94 94
MItem MItem
35 38
../../../../../lib/cmn/path-canon.c ../../../../../lib/cmn/path-basename.c
95 95
WString WString
4 4
@ -433,8 +433,8 @@ WVList
0 0
98 98
MItem MItem
28 35
../../../../../lib/cmn/pio.c ../../../../../lib/cmn/path-canon.c
99 99
WString WString
4 4
@ -452,7 +452,7 @@ WVList
102 102
MItem MItem
28 28
../../../../../lib/cmn/pma.c ../../../../../lib/cmn/pio.c
103 103
WString WString
4 4
@ -470,7 +470,7 @@ WVList
106 106
MItem MItem
28 28
../../../../../lib/cmn/rbt.c ../../../../../lib/cmn/pma.c
107 107
WString WString
4 4
@ -488,7 +488,7 @@ WVList
110 110
MItem MItem
28 28
../../../../../lib/cmn/rex.c ../../../../../lib/cmn/rbt.c
111 111
WString WString
4 4
@ -506,7 +506,7 @@ WVList
114 114
MItem MItem
28 28
../../../../../lib/cmn/sio.c ../../../../../lib/cmn/rex.c
115 115
WString WString
4 4
@ -524,7 +524,7 @@ WVList
118 118
MItem MItem
28 28
../../../../../lib/cmn/sll.c ../../../../../lib/cmn/sio.c
119 119
WString WString
4 4
@ -541,8 +541,8 @@ WVList
0 0
122 122
MItem MItem
30 28
../../../../../lib/cmn/stdio.c ../../../../../lib/cmn/sll.c
123 123
WString WString
4 4
@ -559,8 +559,8 @@ WVList
0 0
126 126
MItem MItem
32 30
../../../../../lib/cmn/str-beg.c ../../../../../lib/cmn/stdio.c
127 127
WString WString
4 4
@ -578,7 +578,7 @@ WVList
130 130
MItem MItem
32 32
../../../../../lib/cmn/str-cat.c ../../../../../lib/cmn/str-beg.c
131 131
WString WString
4 4
@ -596,7 +596,7 @@ WVList
134 134
MItem MItem
32 32
../../../../../lib/cmn/str-chr.c ../../../../../lib/cmn/str-cat.c
135 135
WString WString
4 4
@ -614,7 +614,7 @@ WVList
138 138
MItem MItem
32 32
../../../../../lib/cmn/str-cmp.c ../../../../../lib/cmn/str-chr.c
139 139
WString WString
4 4
@ -632,7 +632,7 @@ WVList
142 142
MItem MItem
32 32
../../../../../lib/cmn/str-cnv.c ../../../../../lib/cmn/str-cmp.c
143 143
WString WString
4 4
@ -650,7 +650,7 @@ WVList
146 146
MItem MItem
32 32
../../../../../lib/cmn/str-cpy.c ../../../../../lib/cmn/str-cnv.c
147 147
WString WString
4 4
@ -668,7 +668,7 @@ WVList
150 150
MItem MItem
32 32
../../../../../lib/cmn/str-del.c ../../../../../lib/cmn/str-cpy.c
151 151
WString WString
4 4
@ -686,7 +686,7 @@ WVList
154 154
MItem MItem
32 32
../../../../../lib/cmn/str-dup.c ../../../../../lib/cmn/str-del.c
155 155
WString WString
4 4
@ -703,8 +703,8 @@ WVList
0 0
158 158
MItem MItem
33 32
../../../../../lib/cmn/str-dynm.c ../../../../../lib/cmn/str-dup.c
159 159
WString WString
4 4
@ -722,7 +722,7 @@ WVList
162 162
MItem MItem
33 33
../../../../../lib/cmn/str-dynw.c ../../../../../lib/cmn/str-dynm.c
163 163
WString WString
4 4
@ -739,8 +739,8 @@ WVList
0 0
166 166
MItem MItem
32 33
../../../../../lib/cmn/str-end.c ../../../../../lib/cmn/str-dynw.c
167 167
WString WString
4 4
@ -757,8 +757,8 @@ WVList
0 0
170 170
MItem MItem
33 32
../../../../../lib/cmn/str-excl.c ../../../../../lib/cmn/str-end.c
171 171
WString WString
4 4
@ -776,7 +776,7 @@ WVList
174 174
MItem MItem
33 33
../../../../../lib/cmn/str-fcpy.c ../../../../../lib/cmn/str-excl.c
175 175
WString WString
4 4
@ -794,7 +794,7 @@ WVList
178 178
MItem MItem
33 33
../../../../../lib/cmn/str-incl.c ../../../../../lib/cmn/str-fcpy.c
179 179
WString WString
4 4
@ -811,8 +811,8 @@ WVList
0 0
182 182
MItem MItem
32 33
../../../../../lib/cmn/str-len.c ../../../../../lib/cmn/str-incl.c
183 183
WString WString
4 4
@ -830,7 +830,7 @@ WVList
186 186
MItem MItem
32 32
../../../../../lib/cmn/str-pac.c ../../../../../lib/cmn/str-len.c
187 187
WString WString
4 4
@ -847,8 +847,8 @@ WVList
0 0
190 190
MItem MItem
33 32
../../../../../lib/cmn/str-pbrk.c ../../../../../lib/cmn/str-pac.c
191 191
WString WString
4 4
@ -865,8 +865,8 @@ WVList
0 0
194 194
MItem MItem
32 33
../../../../../lib/cmn/str-put.c ../../../../../lib/cmn/str-pbrk.c
195 195
WString WString
4 4
@ -884,7 +884,7 @@ WVList
198 198
MItem MItem
32 32
../../../../../lib/cmn/str-rev.c ../../../../../lib/cmn/str-put.c
199 199
WString WString
4 4
@ -902,7 +902,7 @@ WVList
202 202
MItem MItem
32 32
../../../../../lib/cmn/str-rot.c ../../../../../lib/cmn/str-rev.c
203 203
WString WString
4 4
@ -920,7 +920,7 @@ WVList
206 206
MItem MItem
32 32
../../../../../lib/cmn/str-set.c ../../../../../lib/cmn/str-rot.c
207 207
WString WString
4 4
@ -938,7 +938,7 @@ WVList
210 210
MItem MItem
32 32
../../../../../lib/cmn/str-spl.c ../../../../../lib/cmn/str-set.c
211 211
WString WString
4 4
@ -956,7 +956,7 @@ WVList
214 214
MItem MItem
32 32
../../../../../lib/cmn/str-spn.c ../../../../../lib/cmn/str-spl.c
215 215
WString WString
4 4
@ -974,7 +974,7 @@ WVList
218 218
MItem MItem
32 32
../../../../../lib/cmn/str-str.c ../../../../../lib/cmn/str-spn.c
219 219
WString WString
4 4
@ -991,8 +991,8 @@ WVList
0 0
222 222
MItem MItem
34 32
../../../../../lib/cmn/str-subst.c ../../../../../lib/cmn/str-str.c
223 223
WString WString
4 4
@ -1009,8 +1009,8 @@ WVList
0 0
226 226
MItem MItem
32 34
../../../../../lib/cmn/str-tok.c ../../../../../lib/cmn/str-subst.c
227 227
WString WString
4 4
@ -1028,7 +1028,7 @@ WVList
230 230
MItem MItem
32 32
../../../../../lib/cmn/str-trm.c ../../../../../lib/cmn/str-tok.c
231 231
WString WString
4 4
@ -1045,8 +1045,8 @@ WVList
0 0
234 234
MItem MItem
33 32
../../../../../lib/cmn/str-word.c ../../../../../lib/cmn/str-trm.c
235 235
WString WString
4 4
@ -1063,8 +1063,8 @@ WVList
0 0
238 238
MItem MItem
29 33
../../../../../lib/cmn/time.c ../../../../../lib/cmn/str-word.c
239 239
WString WString
4 4
@ -1081,8 +1081,8 @@ WVList
0 0
242 242
MItem MItem
32 29
../../../../../lib/cmn/tio-get.c ../../../../../lib/cmn/time.c
243 243
WString WString
4 4
@ -1100,7 +1100,7 @@ WVList
246 246
MItem MItem
32 32
../../../../../lib/cmn/tio-put.c ../../../../../lib/cmn/tio-get.c
247 247
WString WString
4 4
@ -1117,8 +1117,8 @@ WVList
0 0
250 250
MItem MItem
28 32
../../../../../lib/cmn/tio.c ../../../../../lib/cmn/tio-put.c
251 251
WString WString
4 4
@ -1135,8 +1135,8 @@ WVList
0 0
254 254
MItem MItem
32 28
../../../../../lib/cmn/tre-ast.c ../../../../../lib/cmn/tio.c
255 255
WString WString
4 4
@ -1153,8 +1153,8 @@ WVList
0 0
258 258
MItem MItem
36 32
../../../../../lib/cmn/tre-compile.c ../../../../../lib/cmn/tre-ast.c
259 259
WString WString
4 4
@ -1171,8 +1171,8 @@ WVList
0 0
262 262
MItem MItem
44 36
../../../../../lib/cmn/tre-match-backtrack.c ../../../../../lib/cmn/tre-compile.c
263 263
WString WString
4 4
@ -1189,8 +1189,8 @@ WVList
0 0
266 266
MItem MItem
43 44
../../../../../lib/cmn/tre-match-parallel.c ../../../../../lib/cmn/tre-match-backtrack.c
267 267
WString WString
4 4
@ -1207,8 +1207,8 @@ WVList
0 0
270 270
MItem MItem
34 43
../../../../../lib/cmn/tre-parse.c ../../../../../lib/cmn/tre-match-parallel.c
271 271
WString WString
4 4
@ -1226,7 +1226,7 @@ WVList
274 274
MItem MItem
34 34
../../../../../lib/cmn/tre-stack.c ../../../../../lib/cmn/tre-parse.c
275 275
WString WString
4 4
@ -1243,8 +1243,8 @@ WVList
0 0
278 278
MItem MItem
28 34
../../../../../lib/cmn/tre.c ../../../../../lib/cmn/tre-stack.c
279 279
WString WString
4 4
@ -1262,7 +1262,7 @@ WVList
282 282
MItem MItem
28 28
../../../../../lib/cmn/xma.c ../../../../../lib/cmn/tre.c
283 283
WString WString
4 4
@ -1279,26 +1279,26 @@ WVList
0 0
286 286
MItem MItem
3 28
*.h ../../../../../lib/cmn/xma.c
287 287
WString WString
3 4
NIL COBJ
288 288
WVList WVList
0 0
289 289
WVList WVList
0 0
-1 11
1 1
1 1
0 0
290 290
MItem MItem
28 3
../../../../../lib/cmn/mem.h *.h
291 291
WString WString
3 3
@ -1309,14 +1309,14 @@ WVList
293 293
WVList WVList
0 0
286 -1
1 1
1 1
0 0
294 294
MItem MItem
32 28
../../../../../lib/cmn/syscall.h ../../../../../lib/cmn/mem.h
295 295
WString WString
3 3
@ -1327,7 +1327,25 @@ WVList
297 297
WVList WVList
0 0
286 290
1
1
0
298
MItem
32
../../../../../lib/cmn/syscall.h
299
WString
3
NIL
300
WVList
0
301
WVList
0
290
1 1
1 1
0 0

View File

@ -106,8 +106,8 @@ WRect
WFileName WFileName
30 30
release/os2/lib/cmn/qsecmn.tgt release/os2/lib/cmn/qsecmn.tgt
16 0
13 0
27 27
VComponent VComponent
28 28
@ -154,8 +154,8 @@ WRect
WFileName WFileName
28 28
debug/os2/lib/cmn/qsecmn.tgt debug/os2/lib/cmn/qsecmn.tgt
16 0
16 0
36 36
VComponent VComponent
37 37
@ -380,4 +380,4 @@ WFileName
debug/win32/lib/sed/qsesed.tgt debug/win32/lib/sed/qsesed.tgt
0 0
0 0
33 24

View File

@ -42,7 +42,7 @@ WVList
0 0
10 10
WPickList WPickList
69 70
11 11
MItem MItem
3 3
@ -143,8 +143,8 @@ WVList
0 0
35 35
MItem MItem
35 33
../../../../../lib/cmn/alg-search.c ../../../../../lib/cmn/alg-rand.c
36 36
WString WString
4 4
@ -161,8 +161,8 @@ WVList
0 0
39 39
MItem MItem
33 35
../../../../../lib/cmn/alg-sort.c ../../../../../lib/cmn/alg-search.c
40 40
WString WString
4 4
@ -179,8 +179,8 @@ WVList
0 0
43 43
MItem MItem
31 33
../../../../../lib/cmn/assert.c ../../../../../lib/cmn/alg-sort.c
44 44
WString WString
4 4
@ -197,8 +197,8 @@ WVList
0 0
47 47
MItem MItem
32 31
../../../../../lib/cmn/chr-cnv.c ../../../../../lib/cmn/assert.c
48 48
WString WString
4 4
@ -215,8 +215,8 @@ WVList
0 0
51 51
MItem MItem
28 32
../../../../../lib/cmn/chr.c ../../../../../lib/cmn/chr-cnv.c
52 52
WString WString
4 4
@ -234,7 +234,7 @@ WVList
55 55
MItem MItem
28 28
../../../../../lib/cmn/dll.c ../../../../../lib/cmn/chr.c
56 56
WString WString
4 4
@ -252,7 +252,7 @@ WVList
59 59
MItem MItem
28 28
../../../../../lib/cmn/fio.c ../../../../../lib/cmn/dll.c
60 60
WString WString
4 4
@ -270,7 +270,7 @@ WVList
63 63
MItem MItem
28 28
../../../../../lib/cmn/fma.c ../../../../../lib/cmn/fio.c
64 64
WString WString
4 4
@ -288,7 +288,7 @@ WVList
67 67
MItem MItem
28 28
../../../../../lib/cmn/fmt.c ../../../../../lib/cmn/fma.c
68 68
WString WString
4 4
@ -306,7 +306,7 @@ WVList
71 71
MItem MItem
28 28
../../../../../lib/cmn/gdl.c ../../../../../lib/cmn/fmt.c
72 72
WString WString
4 4
@ -324,7 +324,7 @@ WVList
75 75
MItem MItem
28 28
../../../../../lib/cmn/htb.c ../../../../../lib/cmn/gdl.c
76 76
WString WString
4 4
@ -342,7 +342,7 @@ WVList
79 79
MItem MItem
28 28
../../../../../lib/cmn/lda.c ../../../../../lib/cmn/htb.c
80 80
WString WString
4 4
@ -359,8 +359,8 @@ WVList
0 0
83 83
MItem MItem
29 28
../../../../../lib/cmn/main.c ../../../../../lib/cmn/lda.c
84 84
WString WString
4 4
@ -377,8 +377,8 @@ WVList
0 0
87 87
MItem MItem
28 29
../../../../../lib/cmn/mem.c ../../../../../lib/cmn/main.c
88 88
WString WString
4 4
@ -396,7 +396,7 @@ WVList
91 91
MItem MItem
28 28
../../../../../lib/cmn/oht.c ../../../../../lib/cmn/mem.c
92 92
WString WString
4 4
@ -414,7 +414,7 @@ WVList
95 95
MItem MItem
28 28
../../../../../lib/cmn/opt.c ../../../../../lib/cmn/oht.c
96 96
WString WString
4 4
@ -431,8 +431,8 @@ WVList
0 0
99 99
MItem MItem
38 28
../../../../../lib/cmn/path-basename.c ../../../../../lib/cmn/opt.c
100 100
WString WString
4 4
@ -449,8 +449,8 @@ WVList
0 0
103 103
MItem MItem
35 38
../../../../../lib/cmn/path-canon.c ../../../../../lib/cmn/path-basename.c
104 104
WString WString
4 4
@ -467,8 +467,8 @@ WVList
0 0
107 107
MItem MItem
28 35
../../../../../lib/cmn/pio.c ../../../../../lib/cmn/path-canon.c
108 108
WString WString
4 4
@ -486,7 +486,7 @@ WVList
111 111
MItem MItem
28 28
../../../../../lib/cmn/pma.c ../../../../../lib/cmn/pio.c
112 112
WString WString
4 4
@ -504,7 +504,7 @@ WVList
115 115
MItem MItem
28 28
../../../../../lib/cmn/rbt.c ../../../../../lib/cmn/pma.c
116 116
WString WString
4 4
@ -522,7 +522,7 @@ WVList
119 119
MItem MItem
28 28
../../../../../lib/cmn/rex.c ../../../../../lib/cmn/rbt.c
120 120
WString WString
4 4
@ -540,7 +540,7 @@ WVList
123 123
MItem MItem
28 28
../../../../../lib/cmn/sio.c ../../../../../lib/cmn/rex.c
124 124
WString WString
4 4
@ -558,7 +558,7 @@ WVList
127 127
MItem MItem
28 28
../../../../../lib/cmn/sll.c ../../../../../lib/cmn/sio.c
128 128
WString WString
4 4
@ -575,8 +575,8 @@ WVList
0 0
131 131
MItem MItem
30 28
../../../../../lib/cmn/stdio.c ../../../../../lib/cmn/sll.c
132 132
WString WString
4 4
@ -593,8 +593,8 @@ WVList
0 0
135 135
MItem MItem
32 30
../../../../../lib/cmn/str-beg.c ../../../../../lib/cmn/stdio.c
136 136
WString WString
4 4
@ -612,7 +612,7 @@ WVList
139 139
MItem MItem
32 32
../../../../../lib/cmn/str-cat.c ../../../../../lib/cmn/str-beg.c
140 140
WString WString
4 4
@ -630,7 +630,7 @@ WVList
143 143
MItem MItem
32 32
../../../../../lib/cmn/str-chr.c ../../../../../lib/cmn/str-cat.c
144 144
WString WString
4 4
@ -648,7 +648,7 @@ WVList
147 147
MItem MItem
32 32
../../../../../lib/cmn/str-cmp.c ../../../../../lib/cmn/str-chr.c
148 148
WString WString
4 4
@ -666,7 +666,7 @@ WVList
151 151
MItem MItem
32 32
../../../../../lib/cmn/str-cnv.c ../../../../../lib/cmn/str-cmp.c
152 152
WString WString
4 4
@ -684,7 +684,7 @@ WVList
155 155
MItem MItem
32 32
../../../../../lib/cmn/str-cpy.c ../../../../../lib/cmn/str-cnv.c
156 156
WString WString
4 4
@ -702,7 +702,7 @@ WVList
159 159
MItem MItem
32 32
../../../../../lib/cmn/str-del.c ../../../../../lib/cmn/str-cpy.c
160 160
WString WString
4 4
@ -720,7 +720,7 @@ WVList
163 163
MItem MItem
32 32
../../../../../lib/cmn/str-dup.c ../../../../../lib/cmn/str-del.c
164 164
WString WString
4 4
@ -737,8 +737,8 @@ WVList
0 0
167 167
MItem MItem
33 32
../../../../../lib/cmn/str-dynm.c ../../../../../lib/cmn/str-dup.c
168 168
WString WString
4 4
@ -756,7 +756,7 @@ WVList
171 171
MItem MItem
33 33
../../../../../lib/cmn/str-dynw.c ../../../../../lib/cmn/str-dynm.c
172 172
WString WString
4 4
@ -773,8 +773,8 @@ WVList
0 0
175 175
MItem MItem
32 33
../../../../../lib/cmn/str-end.c ../../../../../lib/cmn/str-dynw.c
176 176
WString WString
4 4
@ -791,8 +791,8 @@ WVList
0 0
179 179
MItem MItem
33 32
../../../../../lib/cmn/str-excl.c ../../../../../lib/cmn/str-end.c
180 180
WString WString
4 4
@ -810,7 +810,7 @@ WVList
183 183
MItem MItem
33 33
../../../../../lib/cmn/str-fcpy.c ../../../../../lib/cmn/str-excl.c
184 184
WString WString
4 4
@ -828,7 +828,7 @@ WVList
187 187
MItem MItem
33 33
../../../../../lib/cmn/str-incl.c ../../../../../lib/cmn/str-fcpy.c
188 188
WString WString
4 4
@ -845,8 +845,8 @@ WVList
0 0
191 191
MItem MItem
32 33
../../../../../lib/cmn/str-len.c ../../../../../lib/cmn/str-incl.c
192 192
WString WString
4 4
@ -864,7 +864,7 @@ WVList
195 195
MItem MItem
32 32
../../../../../lib/cmn/str-pac.c ../../../../../lib/cmn/str-len.c
196 196
WString WString
4 4
@ -881,8 +881,8 @@ WVList
0 0
199 199
MItem MItem
33 32
../../../../../lib/cmn/str-pbrk.c ../../../../../lib/cmn/str-pac.c
200 200
WString WString
4 4
@ -899,8 +899,8 @@ WVList
0 0
203 203
MItem MItem
32 33
../../../../../lib/cmn/str-put.c ../../../../../lib/cmn/str-pbrk.c
204 204
WString WString
4 4
@ -918,7 +918,7 @@ WVList
207 207
MItem MItem
32 32
../../../../../lib/cmn/str-rev.c ../../../../../lib/cmn/str-put.c
208 208
WString WString
4 4
@ -936,7 +936,7 @@ WVList
211 211
MItem MItem
32 32
../../../../../lib/cmn/str-rot.c ../../../../../lib/cmn/str-rev.c
212 212
WString WString
4 4
@ -954,7 +954,7 @@ WVList
215 215
MItem MItem
32 32
../../../../../lib/cmn/str-set.c ../../../../../lib/cmn/str-rot.c
216 216
WString WString
4 4
@ -972,7 +972,7 @@ WVList
219 219
MItem MItem
32 32
../../../../../lib/cmn/str-spl.c ../../../../../lib/cmn/str-set.c
220 220
WString WString
4 4
@ -990,7 +990,7 @@ WVList
223 223
MItem MItem
32 32
../../../../../lib/cmn/str-spn.c ../../../../../lib/cmn/str-spl.c
224 224
WString WString
4 4
@ -1008,7 +1008,7 @@ WVList
227 227
MItem MItem
32 32
../../../../../lib/cmn/str-str.c ../../../../../lib/cmn/str-spn.c
228 228
WString WString
4 4
@ -1025,8 +1025,8 @@ WVList
0 0
231 231
MItem MItem
34 32
../../../../../lib/cmn/str-subst.c ../../../../../lib/cmn/str-str.c
232 232
WString WString
4 4
@ -1043,8 +1043,8 @@ WVList
0 0
235 235
MItem MItem
32 34
../../../../../lib/cmn/str-tok.c ../../../../../lib/cmn/str-subst.c
236 236
WString WString
4 4
@ -1062,7 +1062,7 @@ WVList
239 239
MItem MItem
32 32
../../../../../lib/cmn/str-trm.c ../../../../../lib/cmn/str-tok.c
240 240
WString WString
4 4
@ -1079,8 +1079,8 @@ WVList
0 0
243 243
MItem MItem
33 32
../../../../../lib/cmn/str-word.c ../../../../../lib/cmn/str-trm.c
244 244
WString WString
4 4
@ -1097,8 +1097,8 @@ WVList
0 0
247 247
MItem MItem
29 33
../../../../../lib/cmn/time.c ../../../../../lib/cmn/str-word.c
248 248
WString WString
4 4
@ -1115,8 +1115,8 @@ WVList
0 0
251 251
MItem MItem
32 29
../../../../../lib/cmn/tio-get.c ../../../../../lib/cmn/time.c
252 252
WString WString
4 4
@ -1134,7 +1134,7 @@ WVList
255 255
MItem MItem
32 32
../../../../../lib/cmn/tio-put.c ../../../../../lib/cmn/tio-get.c
256 256
WString WString
4 4
@ -1151,8 +1151,8 @@ WVList
0 0
259 259
MItem MItem
28 32
../../../../../lib/cmn/tio.c ../../../../../lib/cmn/tio-put.c
260 260
WString WString
4 4
@ -1169,8 +1169,8 @@ WVList
0 0
263 263
MItem MItem
32 28
../../../../../lib/cmn/tre-ast.c ../../../../../lib/cmn/tio.c
264 264
WString WString
4 4
@ -1187,8 +1187,8 @@ WVList
0 0
267 267
MItem MItem
36 32
../../../../../lib/cmn/tre-compile.c ../../../../../lib/cmn/tre-ast.c
268 268
WString WString
4 4
@ -1205,8 +1205,8 @@ WVList
0 0
271 271
MItem MItem
44 36
../../../../../lib/cmn/tre-match-backtrack.c ../../../../../lib/cmn/tre-compile.c
272 272
WString WString
4 4
@ -1223,8 +1223,8 @@ WVList
0 0
275 275
MItem MItem
43 44
../../../../../lib/cmn/tre-match-parallel.c ../../../../../lib/cmn/tre-match-backtrack.c
276 276
WString WString
4 4
@ -1241,8 +1241,8 @@ WVList
0 0
279 279
MItem MItem
34 43
../../../../../lib/cmn/tre-parse.c ../../../../../lib/cmn/tre-match-parallel.c
280 280
WString WString
4 4
@ -1260,7 +1260,7 @@ WVList
283 283
MItem MItem
34 34
../../../../../lib/cmn/tre-stack.c ../../../../../lib/cmn/tre-parse.c
284 284
WString WString
4 4
@ -1277,8 +1277,8 @@ WVList
0 0
287 287
MItem MItem
28 34
../../../../../lib/cmn/tre.c ../../../../../lib/cmn/tre-stack.c
288 288
WString WString
4 4
@ -1296,7 +1296,7 @@ WVList
291 291
MItem MItem
28 28
../../../../../lib/cmn/xma.c ../../../../../lib/cmn/tre.c
292 292
WString WString
4 4
@ -1313,26 +1313,26 @@ WVList
0 0
295 295
MItem MItem
3 28
*.h ../../../../../lib/cmn/xma.c
296 296
WString WString
3 4
NIL COBJ
297 297
WVList WVList
0 0
298 298
WVList WVList
0 0
-1 11
1 1
1 1
0 0
299 299
MItem MItem
28 3
../../../../../lib/cmn/mem.h *.h
300 300
WString WString
3 3
@ -1343,14 +1343,14 @@ WVList
302 302
WVList WVList
0 0
295 -1
1 1
1 1
0 0
303 303
MItem MItem
32 28
../../../../../lib/cmn/syscall.h ../../../../../lib/cmn/mem.h
304 304
WString WString
3 3
@ -1361,7 +1361,25 @@ WVList
306 306
WVList WVList
0 0
295 299
1
1
0
307
MItem
32
../../../../../lib/cmn/syscall.h
308
WString
3
NIL
309
WVList
0
310
WVList
0
299
1 1
1 1
0 0