added qse_mbsxstr()/qse_wcsxstr() and related functions

This commit is contained in:
hyung-hwan 2011-03-30 09:37:19 +00:00
parent 5662ae2010
commit 9cf0386f11
14 changed files with 2190 additions and 414 deletions

View File

@ -229,13 +229,23 @@ int scm_main (int argc, qse_char_t* argv[])
{ {
int i; int i;
for (i = 0; i<2; i++) for (i = 0; i<2; i++)
#if defined(_WIN32)
pio1 (QSE_T("c:\\winnt\\system32\\netstat.exe -an"), QSE_PIO_READOUT|QSE_PIO_WRITEIN|/*QSE_PIO_SHELL|*/QSE_PIO_DROPERR, QSE_PIO_OUT);
#elif defined(__OS2__)
pio1 (QSE_T("pstat.exe /c"), QSE_PIO_READOUT|QSE_PIO_WRITEIN|/*QSE_PIO_SHELL|*/QSE_PIO_DROPERR, QSE_PIO_OUT); pio1 (QSE_T("pstat.exe /c"), QSE_PIO_READOUT|QSE_PIO_WRITEIN|/*QSE_PIO_SHELL|*/QSE_PIO_DROPERR, QSE_PIO_OUT);
#else
pio1 (QSE_T("ls -laF"), QSE_PIO_READOUT|QSE_PIO_WRITEIN|/*QSE_PIO_SHELL|*/QSE_PIO_DROPERR, QSE_PIO_OUT);
#endif
} }
{ {
qse_printf (QSE_T("%d\n"), (int)qse_strspn (QSE_T("abcdefg"), QSE_T("cdab"))); qse_printf (QSE_T("%d\n"), (int)qse_strspn (QSE_T("abcdefg"), QSE_T("cdab")));
qse_printf (QSE_T("%d\n"), (int)qse_strcspn (QSE_T("abcdefg"), QSE_T("fg"))); qse_printf (QSE_T("%d\n"), (int)qse_strcspn (QSE_T("abcdefg"), QSE_T("fg")));
qse_printf (QSE_T("%s\n"), qse_strpbrk (QSE_T("abcdefg"), QSE_T("fb"))); qse_printf (QSE_T("%s\n"), qse_strpbrk (QSE_T("abcdefg"), QSE_T("fb")));
qse_printf (QSE_T("%s\n"), qse_strrcasestr (QSE_T("fbFBFBFBxyz"), QSE_T("fb")));
qse_printf (QSE_T("%s\n"), qse_strcasestr (QSE_T("fbFBFBFBxyz"), QSE_T("fb")));
} }
{ {
@ -249,6 +259,17 @@ pio1 (QSE_T("pstat.exe /c"), QSE_PIO_READOUT|QSE_PIO_WRITEIN|/*QSE_PIO_SHELL|*/Q
qse_printf (QSE_T("%d %s\n"), (int)len, str); qse_printf (QSE_T("%d %s\n"), (int)len, str);
} }
{
qse_printf (QSE_T("sizeof(int) = %d\n"), (int)sizeof(int));
qse_printf (QSE_T("sizeof(long) = %d\n"), (int)sizeof(long));
qse_printf (QSE_T("sizeof(long long) = %d\n"), (int)sizeof(long long));
qse_printf (QSE_T("sizeof(float) = %d\n"), (int)sizeof(float));
qse_printf (QSE_T("sizeof(double) = %d\n"), (int)sizeof(double));
qse_printf (QSE_T("sizeof(long double) = %d\n"), (int)sizeof(long double));
qse_printf (QSE_T("sizeof(void*) = %d\n"), (int)sizeof(void*));
qse_printf (QSE_T("sizeof(wchar_t) = %d\n"), (int)sizeof(wchar_t));
}
{ {
qse_scm_ent_t* x1, * x2; qse_scm_ent_t* x1, * x2;

View File

@ -1,5 +1,5 @@
/* /*
* $Id: str.h 420 2011-03-29 11:20:29Z hyunghwan.chung $ * $Id: str.h 421 2011-03-29 15:37:19Z hyunghwan.chung $
* *
Copyright 2006-2009 Chung, Hyung-Hwan. Copyright 2006-2009 Chung, Hyung-Hwan.
This file is part of QSE. This file is part of QSE.
@ -776,10 +776,10 @@ qse_wchar_t* qse_wcsxdup2 (
* The qse_mbsstr() function searchs a string @a str for the first occurrence * The qse_mbsstr() function searchs a string @a str for the first occurrence
* of a substring @a sub. * of a substring @a sub.
* @return pointer to the first occurrence in @a str if @a sub is found, * @return pointer to the first occurrence in @a str if @a sub is found,
* QSE_NULL if not. * #QSE_NULL if not.
*/ */
qse_mchar_t* qse_mbsstr ( qse_mchar_t* qse_mbsstr (
const qse_mchar_t* str, const qse_mchar_t* str,
const qse_mchar_t* sub const qse_mchar_t* sub
); );
@ -787,74 +787,187 @@ qse_mchar_t* qse_mbsstr (
* The qse_wcsstr() function searchs a string @a str for the first occurrence * The qse_wcsstr() function searchs a string @a str for the first occurrence
* of a substring @a sub. * of a substring @a sub.
* @return pointer to the first occurrence in @a str if @a sub is found, * @return pointer to the first occurrence in @a str if @a sub is found,
* QSE_NULL if not. * #QSE_NULL if not.
*/ */
qse_wchar_t* qse_wcsstr ( qse_wchar_t* qse_wcsstr (
const qse_wchar_t* str, const qse_wchar_t* str,
const qse_wchar_t* sub const qse_wchar_t* sub
); );
#ifdef QSE_CHAR_IS_MCHAR qse_mchar_t* qse_mbsxstr (
# define qse_strstr(str,sub) qse_mbsstr(str,sub) const qse_mchar_t* str,
#else qse_size_t size,
# define qse_strstr(str,sub) qse_wcsstr(str,sub) const qse_mchar_t* sub
#endif
qse_char_t* qse_strxstr (
const qse_char_t* str,
qse_size_t size,
const qse_char_t* sub
); );
qse_char_t* qse_strxnstr ( qse_wchar_t* qse_wcsxstr (
const qse_char_t* str, const qse_wchar_t* str,
qse_size_t strsz, qse_size_t size,
const qse_char_t* sub, const qse_wchar_t* sub
qse_size_t subsz
); );
qse_char_t* qse_strcasestr ( qse_mchar_t* qse_mbsxnstr (
const qse_char_t* str, const qse_mchar_t* str,
const qse_char_t* sub qse_size_t strsz,
const qse_mchar_t* sub,
qse_size_t subsz
); );
qse_char_t* qse_strxcasestr ( qse_wchar_t* qse_wcsxnstr (
const qse_char_t* str, const qse_wchar_t* str,
qse_size_t size, qse_size_t strsz,
const qse_char_t* sub const qse_wchar_t* sub,
qse_size_t subsz
); );
qse_char_t* qse_strxncasestr ( qse_mchar_t* qse_mbscasestr (
const qse_char_t* str, const qse_mchar_t* str,
qse_size_t strsz, const qse_mchar_t* sub
const qse_char_t* sub, );
qse_size_t subsz
qse_wchar_t* qse_wcscasestr (
const qse_wchar_t* str,
const qse_wchar_t* sub
);
qse_mchar_t* qse_mbsxcasestr (
const qse_mchar_t* str,
qse_size_t size,
const qse_mchar_t* sub
);
qse_wchar_t* qse_wcsxcasestr (
const qse_wchar_t* str,
qse_size_t size,
const qse_wchar_t* sub
);
qse_mchar_t* qse_mbsxncasestr (
const qse_mchar_t* str,
qse_size_t strsz,
const qse_mchar_t* sub,
qse_size_t subsz
);
qse_wchar_t* qse_wcsxncasestr (
const qse_wchar_t* str,
qse_size_t strsz,
const qse_wchar_t* sub,
qse_size_t subsz
); );
/** /**
* The qse_strrstr() function searchs a string @a str for the last occurrence * The qse_mbsrstr() function searchs a string @a str for the last occurrence
* of a substring @a sub. * of a substring @a sub.
* @return pointer to the last occurrence in @a str if @a sub is found, * @return pointer to the last occurrence in @a str if @a sub is found,
* QSE_NULL if not. * #QSE_NULL if not.
*/ */
qse_char_t* qse_strrstr ( qse_mchar_t* qse_mbsrstr (
const qse_char_t* str, const qse_mchar_t* str,
const qse_char_t* sub const qse_mchar_t* sub
); );
qse_char_t* qse_strxrstr ( /**
const qse_char_t* str, * The qse_wcsrstr() function searchs a string @a str for the last occurrence
qse_size_t size, * of a substring @a sub.
const qse_char_t* sub * @return pointer to the last occurrence in @a str if @a sub is found,
* #QSE_NULL if not.
*/
qse_wchar_t* qse_wcsrstr (
const qse_wchar_t* str,
const qse_wchar_t* sub
); );
qse_char_t* qse_strxnrstr ( qse_mchar_t* qse_mbsxrstr (
const qse_char_t* str, const qse_mchar_t* str,
qse_size_t strsz, qse_size_t size,
const qse_char_t* sub, const qse_mchar_t* sub
qse_size_t subsz
); );
qse_wchar_t* qse_wcsxrstr (
const qse_wchar_t* str,
qse_size_t size,
const qse_wchar_t* sub
);
qse_mchar_t* qse_mbsxnrstr (
const qse_mchar_t* str,
qse_size_t strsz,
const qse_mchar_t* sub,
qse_size_t subsz
);
qse_wchar_t* qse_wcsxnrstr (
const qse_wchar_t* str,
qse_size_t strsz,
const qse_wchar_t* sub,
qse_size_t subsz
);
qse_mchar_t* qse_mbsrcasestr (
const qse_mchar_t* str,
const qse_mchar_t* sub
);
qse_wchar_t* qse_wcsrcasestr (
const qse_wchar_t* str,
const qse_wchar_t* sub
);
qse_mchar_t* qse_mbsxrcasestr (
const qse_mchar_t* str,
qse_size_t size,
const qse_mchar_t* sub
);
qse_wchar_t* qse_wcsxrcasestr (
const qse_wchar_t* str,
qse_size_t size,
const qse_wchar_t* sub
);
qse_mchar_t* qse_mbsxnrcasestr (
const qse_mchar_t* str,
qse_size_t strsz,
const qse_mchar_t* sub,
qse_size_t subsz
);
qse_wchar_t* qse_wcsxnrcasestr (
const qse_wchar_t* str,
qse_size_t strsz,
const qse_wchar_t* sub,
qse_size_t subsz
);
#ifdef QSE_CHAR_IS_MCHAR
# define qse_strstr(str,sub) qse_mbsstr(str,sub)
# define qse_strxstr(str,size,sub) qse_mbsxstr(str,size,sub)
# define qse_strxnstr(str,strsz,sub,subsz) qse_mbsxnstr(str,strsz,sub,subsz)
# define qse_strcasestr(str,sub) qse_mbscasestr(str,sub)
# define qse_strxcasestr(str,size,sub) qse_mbsxcasestr(str,size,sub)
# define qse_strxncasestr(str,strsz,sub,subsz) qse_mbsxncasestr(str,strsz,sub,subsz)
# define qse_strrstr(str,sub) qse_mbsrstr(str,sub)
# define qse_strxrstr(str,size,sub) qse_mbsxrstr(str,size,sub)
# define qse_strxnrstr(str,strsz,sub,subsz) qse_mbsxnrstr(str,strsz,sub,subsz)
# define qse_strrcasestr(str,sub) qse_mbsrcasestr(str,sub)
# define qse_strxrcasestr(str,size,sub) qse_mbsxrcasestr(str,size,sub)
# define qse_strxnrcasestr(str,strsz,sub,subsz) qse_mbsxnrcasestr(str,strsz,sub,subsz)
#else
# define qse_strstr(str,sub) qse_wcsstr(str,sub)
# define qse_strxstr(str,size,sub) qse_wcsxstr(str,size,sub)
# define qse_strxnstr(str,strsz,sub,subsz) qse_wcsxnstr(str,strsz,sub,subsz)
# define qse_strcasestr(str,sub) qse_wcscasestr(str,sub)
# define qse_strxcasestr(str,size,sub) qse_wcsxcasestr(str,size,sub)
# define qse_strxncasestr(str,strsz,sub,subsz) qse_wcsxncasestr(str,strsz,sub,subsz)
# define qse_strrstr(str,sub) qse_wcsrstr(str,sub)
# define qse_strxrstr(str,size,sub) qse_wcsxrstr(str,size,sub)
# define qse_strxnrstr(str,strsz,sub,subsz) qse_wcsxnrstr(str,strsz,sub,subsz)
# define qse_strrcasestr(str,sub) qse_wcsrcasestr(str,sub)
# define qse_strxrcasestr(str,size,sub) qse_wcsxrcasestr(str,size,sub)
# define qse_strxnrcasestr(str,strsz,sub,subsz) qse_wcsxnrcasestr(str,strsz,sub,subsz)
#endif
/** /**
* The qse_strxword() function finds a whole word in a string. * The qse_strxword() function finds a whole word in a string.
*/ */

View File

@ -1,5 +1,5 @@
/* /*
* $Id: conf_msw.h 397 2011-03-15 03:40:39Z hyunghwan.chung $ * $Id: conf_msw.h 421 2011-03-29 15:37:19Z hyunghwan.chung $
* *
Copyright 2006-2009 Chung, Hyung-Hwan. Copyright 2006-2009 Chung, Hyung-Hwan.
This file is part of QSE. This file is part of QSE.
@ -33,44 +33,102 @@ _M_IX86 x86 platform
_M_X64 x64 platform _M_X64 x64 platform
*/ */
/* windows for most of non-x86 platforms dropped.
* make it selective to support old non-x86 windows platforms. */
#define QSE_ENDIAN_LITTLE #define QSE_ENDIAN_LITTLE
#define QSE_SIZEOF_CHAR 1 /*
#define QSE_SIZEOF_SHORT 2 * You must define which character type to use as a default character here.
#define QSE_SIZEOF_INT 4 *
* #define QSE_CHAR_IS_WCHAR
* #define QSE_CHAR_IS_MCHAR
*/
/*#ifdef _WIN64 #if defined(__WATCOMC__)
#define QSE_SIZEOF_LONG 8 # define QSE_SIZEOF_CHAR 1
#else*/ # define QSE_SIZEOF_SHORT 2
#define QSE_SIZEOF_LONG 4 # define QSE_SIZEOF_INT 4
/*#endif*/ # define QSE_SIZEOF_LONG 4
# define QSE_SIZEOF_LONG_LONG 8
#if defined(__POCC__) || defined(__DMC__) || defined(__GNUC__) #
/* pelles c with no microsoft extension */ # if defined(_WIN64)
#define QSE_SIZEOF_LONG_LONG 8 # define QSE_SIZEOF_VOID_P 8
# else
#define QSE_SIZEOF___INT8 0 # define QSE_SIZEOF_VOID_P 4
#define QSE_SIZEOF___INT16 0 # endif
#define QSE_SIZEOF___INT32 0 # define QSE_SIZEOF_FLOAT 4
#define QSE_SIZEOF___INT64 0 # define QSE_SIZEOF_DOUBLE 8
#define QSE_SIZEOF___INT128 0 # define QSE_SIZEOF_LONG_DOUBLE 8
# define QSE_SIZEOF_WCHAR_T 2
#
# define QSE_SIZEOF___INT8 1
# define QSE_SIZEOF___INT16 2
# define QSE_SIZEOF___INT32 4
# define QSE_SIZEOF___INT64 8
# define QSE_SIZEOF___INT128 0
#
# define QSE_SIZEOF_OFF64_T 0
# define QSE_SIZEOF_OFF_T 8
#
# define QSE_CHAR_IS_WCHAR
#elif defined(__GNUC__) || defined(__DMC__) || defined(__POCC__)
# define QSE_SIZEOF_CHAR 1
# define QSE_SIZEOF_SHORT 2
# define QSE_SIZEOF_INT 4
# define QSE_SIZEOF_LONG 4
# define QSE_SIZEOF_LONG_LONG 8
#
# if defined(_WIN64)
# define QSE_SIZEOF_VOID_P 8
# else
# define QSE_SIZEOF_VOID_P 4
# endif
# define QSE_SIZEOF_FLOAT 4
# define QSE_SIZEOF_DOUBLE 8
# define QSE_SIZEOF_LONG_DOUBLE 16
# define QSE_SIZEOF_WCHAR_T 2
#
# define QSE_SIZEOF___INT8 0
# define QSE_SIZEOF___INT16 0
# define QSE_SIZEOF___INT32 0
# define QSE_SIZEOF___INT64 0
# define QSE_SIZEOF___INT128 0
#
# define QSE_SIZEOF_OFF64_T 0
# define QSE_SIZEOF_OFF_T 8
#
# define QSE_CHAR_IS_WCHAR
#elif defined(_MSC_VER)
# define QSE_SIZEOF_CHAR 1
# define QSE_SIZEOF_SHORT 2
# define QSE_SIZEOF_INT 4
# define QSE_SIZEOF_LONG 4
# if (_MSC_VER>=1310)
# define QSE_SIZEOF_LONG_LONG 8
# else
# define QSE_SIZEOF_LONG_LONG 0
# endif
#
# if defined(_WIN64)
# define QSE_SIZEOF_VOID_P 8
# else
# define QSE_SIZEOF_VOID_P 4
# endif
# define QSE_SIZEOF_FLOAT 4
# define QSE_SIZEOF_DOUBLE 8
# define QSE_SIZEOF_LONG_DOUBLE 8
# define QSE_SIZEOF_WCHAR_T 2
#
# define QSE_SIZEOF___INT8 1
# define QSE_SIZEOF___INT16 2
# define QSE_SIZEOF___INT32 4
# define QSE_SIZEOF___INT64 8
# define QSE_SIZEOF___INT128 0
#
# define QSE_SIZEOF_OFF64_T 0
# define QSE_SIZEOF_OFF_T 8
#
# define QSE_CHAR_IS_WCHAR
#else #else
#define QSE_SIZEOF_LONG_LONG 0 # error Define the size of various data types.
#define QSE_SIZEOF___INT8 1
#define QSE_SIZEOF___INT16 2
#define QSE_SIZEOF___INT32 4
#define QSE_SIZEOF___INT64 8
#define QSE_SIZEOF___INT128 0
#endif #endif
#ifdef _WIN64
#define QSE_SIZEOF_VOID_P 8
#else
#define QSE_SIZEOF_VOID_P 4
#endif
#define QSE_SIZEOF_FLOAT 4
#define QSE_SIZEOF_DOUBLE 8
#define QSE_SIZEOF_LONG_DOUBLE 16
#define QSE_SIZEOF_WCHAR_T 2

View File

@ -10,8 +10,8 @@ libqsecmn_la_SOURCES = \
syscall.h mem.h \ syscall.h mem.h \
mem.c xma.c fma.c chr.c chr_cnv.c rex.c \ mem.c xma.c fma.c chr.c chr_cnv.c rex.c \
str_bas.c str_cat.c str_chr.c str_cnv.c str_cmp.c str_cpy.c str_dup.c \ str_bas.c str_cat.c str_chr.c str_cnv.c str_cmp.c str_cpy.c str_dup.c \
str_dyn.c str_fcpy.c str_pbrk.c str_put.c str_spn.c str_subst.c \ str_dyn.c str_fcpy.c str_pbrk.c str_put.c str_spn.c str_str.c \
str_utl.c \ str_subst.c str_utl.c \
lda.c oht.c htb.c rbt.c sll.c gdl.c dll.c opt.c \ lda.c oht.c htb.c rbt.c sll.c gdl.c dll.c opt.c \
tio.c tio_get.c tio_put.c \ tio.c tio_get.c tio_put.c \
fio.c pio.c sio.c \ fio.c pio.c sio.c \

View File

@ -75,8 +75,8 @@ libqsecmn_la_DEPENDENCIES =
am_libqsecmn_la_OBJECTS = mem.lo xma.lo fma.lo chr.lo chr_cnv.lo \ am_libqsecmn_la_OBJECTS = mem.lo xma.lo fma.lo chr.lo chr_cnv.lo \
rex.lo str_bas.lo str_cat.lo str_chr.lo str_cnv.lo str_cmp.lo \ rex.lo str_bas.lo str_cat.lo str_chr.lo str_cnv.lo str_cmp.lo \
str_cpy.lo str_dup.lo str_dyn.lo str_fcpy.lo str_pbrk.lo str_put.lo \ str_cpy.lo str_dup.lo str_dyn.lo str_fcpy.lo str_pbrk.lo str_put.lo \
str_spn.lo str_subst.lo str_utl.lo lda.lo oht.lo htb.lo rbt.lo sll.lo \ str_spn.lo str_str.lo str_subst.lo str_utl.lo lda.lo oht.lo htb.lo \
gdl.lo dll.lo opt.lo tio.lo tio_get.lo tio_put.lo fio.lo \ rbt.lo sll.lo gdl.lo dll.lo opt.lo tio.lo tio_get.lo tio_put.lo fio.lo \
pio.lo sio.lo alg_search.lo alg_sort.lo time.lo misc.lo \ pio.lo sio.lo alg_search.lo alg_sort.lo time.lo misc.lo \
assert.lo main.lo stdio.lo assert.lo main.lo stdio.lo
libqsecmn_la_OBJECTS = $(am_libqsecmn_la_OBJECTS) libqsecmn_la_OBJECTS = $(am_libqsecmn_la_OBJECTS)
@ -267,8 +267,8 @@ libqsecmn_la_SOURCES = \
syscall.h mem.h \ syscall.h mem.h \
mem.c xma.c fma.c chr.c chr_cnv.c rex.c \ mem.c xma.c fma.c chr.c chr_cnv.c rex.c \
str_bas.c str_cat.c str_chr.c str_cnv.c str_cmp.c str_cpy.c str_dup.c \ str_bas.c str_cat.c str_chr.c str_cnv.c str_cmp.c str_cpy.c str_dup.c \
str_dyn.c str_fcpy.c str_pbrk.c str_put.c str_spn.c str_subst.c \ str_dyn.c str_fcpy.c str_pbrk.c str_put.c str_spn.c str_str.c \
str_utl.c \ str_subst.c str_utl.c \
lda.c oht.c htb.c rbt.c sll.c gdl.c dll.c opt.c \ lda.c oht.c htb.c rbt.c sll.c gdl.c dll.c opt.c \
tio.c tio_get.c tio_put.c \ tio.c tio_get.c tio_put.c \
fio.c pio.c sio.c \ fio.c pio.c sio.c \
@ -398,6 +398,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str_pbrk.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str_pbrk.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str_put.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str_put.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str_spn.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str_spn.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str_str.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str_subst.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str_subst.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str_utl.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/str_utl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/time.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/time.Plo@am__quote@

View File

@ -1,5 +1,5 @@
/* /*
* $Id: str_bas.c 420 2011-03-29 11:20:29Z hyunghwan.chung $ * $Id: str_bas.c 421 2011-03-29 15:37:19Z hyunghwan.chung $
* *
Copyright 2006-2009 Chung, Hyung-Hwan. Copyright 2006-2009 Chung, Hyung-Hwan.
This file is part of QSE. This file is part of QSE.
@ -43,209 +43,6 @@ qse_size_t qse_strbytes (const qse_char_t* str)
return (p - str) * QSE_SIZEOF(qse_char_t); return (p - str) * QSE_SIZEOF(qse_char_t);
} }
qse_mchar_t* qse_mbsstr (const qse_mchar_t* str, const qse_mchar_t* sub)
{
const qse_mchar_t* x, * y;
y = sub;
if (*y == QSE_MT('\0')) return (qse_mchar_t*)str;
while (*str != QSE_MT('\0'))
{
if (*str != *y)
{
str++;
continue;
}
x = str;
do
{
if (*y == QSE_MT('\0')) return (qse_mchar_t*)str;
if (*x++ != *y++) break;
}
while (1);
y = sub;
str++;
}
return QSE_NULL;
}
qse_wchar_t* qse_wcsstr (const qse_wchar_t* str, const qse_wchar_t* sub)
{
const qse_wchar_t* x, * y;
y = sub;
if (*y == QSE_WT('\0')) return (qse_wchar_t*)str;
while (*str != QSE_WT('\0'))
{
if (*str != *y)
{
str++;
continue;
}
x = str;
do
{
if (*y == QSE_WT('\0')) return (qse_wchar_t*)str;
if (*x++ != *y++) break;
}
while (1);
y = sub;
str++;
}
return QSE_NULL;
}
qse_char_t* qse_strxstr (
const qse_char_t* str, qse_size_t size, const qse_char_t* sub)
{
return qse_strxnstr (str, size, sub, qse_strlen(sub));
}
qse_char_t* qse_strxnstr (
const qse_char_t* str, qse_size_t strsz,
const qse_char_t* sub, qse_size_t subsz)
{
const qse_char_t* end, * subp;
if (subsz == 0) return (qse_char_t*)str;
if (strsz < subsz) return QSE_NULL;
end = str + strsz - subsz;
subp = sub + subsz;
while (str <= end)
{
const qse_char_t* x = str;
const qse_char_t* y = sub;
while (1)
{
if (y >= subp) return (qse_char_t*)str;
if (*x != *y) break;
x++; y++;
}
str++;
}
return QSE_NULL;
}
qse_char_t* qse_strcasestr (const qse_char_t* str, const qse_char_t* sub)
{
const qse_char_t* x, * y;
y = sub;
if (*y == QSE_T('\0')) return (qse_char_t*)str;
while (*str != QSE_T('\0'))
{
if (QSE_TOUPPER(*str) != QSE_TOUPPER(*y))
{
str++;
continue;
}
x = str;
while (1)
{
if (*y == QSE_T('\0')) return (qse_char_t*)str;
if (QSE_TOUPPER(*x) != QSE_TOUPPER(*y)) break;
x++; y++;
}
y = sub;
str++;
}
return QSE_NULL;
}
qse_char_t* qse_strxcasestr (
const qse_char_t* str, qse_size_t size, const qse_char_t* sub)
{
return qse_strxncasestr (str, size, sub, qse_strlen(sub));
}
qse_char_t* qse_strxncasestr (
const qse_char_t* str, qse_size_t strsz,
const qse_char_t* sub, qse_size_t subsz)
{
const qse_char_t* end, * subp;
if (subsz == 0) return (qse_char_t*)str;
if (strsz < subsz) return QSE_NULL;
end = str + strsz - subsz;
subp = sub + subsz;
while (str <= end)
{
const qse_char_t* x = str;
const qse_char_t* y = sub;
while (1)
{
if (y >= subp) return (qse_char_t*)str;
if (QSE_TOUPPER(*x) != QSE_TOUPPER(*y)) break;
x++; y++;
}
str++;
}
return QSE_NULL;
}
qse_char_t* qse_strrstr (const qse_char_t* str, const qse_char_t* sub)
{
return qse_strxnrstr (str, qse_strlen(str), sub, qse_strlen(sub));
}
qse_char_t* qse_strxrstr (
const qse_char_t* str, qse_size_t size, const qse_char_t* sub)
{
return qse_strxnrstr (str, size, sub, qse_strlen(sub));
}
qse_char_t* qse_strxnrstr (
const qse_char_t* str, qse_size_t strsz,
const qse_char_t* sub, qse_size_t subsz)
{
const qse_char_t* p = str + strsz;
const qse_char_t* subp = sub + subsz;
if (subsz == 0) return (qse_char_t*)p;
if (strsz < subsz) return QSE_NULL;
p = p - subsz;
while (p >= str)
{
const qse_char_t* x = p;
const qse_char_t* y = sub;
while (1)
{
if (y >= subp) return (qse_char_t*)p;
if (*x != *y) break;
x++; y++;
}
p--;
}
return QSE_NULL;
}
const qse_char_t* qse_strxword ( const qse_char_t* qse_strxword (
const qse_char_t* str, qse_size_t len, const qse_char_t* word) const qse_char_t* str, qse_size_t len, const qse_char_t* word)
{ {

450
qse/lib/cmn/str_str.c Normal file
View File

@ -0,0 +1,450 @@
/*
* $Id$
*
Copyright 2006-2009 Chung, Hyung-Hwan.
This file is part of QSE.
QSE is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation, either version 3 of
the License, or (at your option) any later version.
QSE is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with QSE. If not, see <http://www.gnu.org/licenses/>.
*/
#include <qse/cmn/str.h>
#include <qse/cmn/chr.h>
qse_mchar_t* qse_mbsstr (const qse_mchar_t* str, const qse_mchar_t* sub)
{
const qse_mchar_t* x, * y;
y = sub;
if (*y == QSE_MT('\0')) return (qse_mchar_t*)str;
while (*str != QSE_MT('\0'))
{
if (*str != *y)
{
str++;
continue;
}
x = str;
do
{
if (*y == QSE_MT('\0')) return (qse_mchar_t*)str;
if (*x++ != *y++) break;
}
while (1);
y = sub;
str++;
}
return QSE_NULL;
}
qse_mchar_t* qse_mbsxstr (
const qse_mchar_t* str, qse_size_t size, const qse_mchar_t* sub)
{
return qse_mbsxnstr (str, size, sub, qse_mbslen(sub));
}
qse_mchar_t* qse_mbsxnstr (
const qse_mchar_t* str, qse_size_t strsz,
const qse_mchar_t* sub, qse_size_t subsz)
{
const qse_mchar_t* end, * subp;
if (subsz == 0) return (qse_mchar_t*)str;
if (strsz < subsz) return QSE_NULL;
end = str + strsz - subsz;
subp = sub + subsz;
while (str <= end)
{
const qse_mchar_t* x = str;
const qse_mchar_t* y = sub;
while (1)
{
if (y >= subp) return (qse_mchar_t*)str;
if (*x != *y) break;
x++; y++;
}
str++;
}
return QSE_NULL;
}
qse_mchar_t* qse_mbscasestr (const qse_mchar_t* str, const qse_mchar_t* sub)
{
const qse_mchar_t* x, * y;
y = sub;
if (*y == QSE_MT('\0')) return (qse_mchar_t*)str;
while (*str != QSE_MT('\0'))
{
if (QSE_TOMUPPER(*str) != QSE_TOMUPPER(*y))
{
str++;
continue;
}
x = str;
while (1)
{
if (*y == QSE_MT('\0')) return (qse_mchar_t*)str;
if (QSE_TOMUPPER(*x) != QSE_TOMUPPER(*y)) break;
x++; y++;
}
y = sub;
str++;
}
return QSE_NULL;
}
qse_mchar_t* qse_mbsxcasestr (
const qse_mchar_t* str, qse_size_t size, const qse_mchar_t* sub)
{
return qse_mbsxncasestr (str, size, sub, qse_mbslen(sub));
}
qse_mchar_t* qse_mbsxncasestr (
const qse_mchar_t* str, qse_size_t strsz,
const qse_mchar_t* sub, qse_size_t subsz)
{
const qse_mchar_t* end, * subp;
if (subsz == 0) return (qse_mchar_t*)str;
if (strsz < subsz) return QSE_NULL;
end = str + strsz - subsz;
subp = sub + subsz;
while (str <= end)
{
const qse_mchar_t* x = str;
const qse_mchar_t* y = sub;
while (1)
{
if (y >= subp) return (qse_mchar_t*)str;
if (QSE_TOMUPPER(*x) != QSE_TOMUPPER(*y)) break;
x++; y++;
}
str++;
}
return QSE_NULL;
}
qse_mchar_t* qse_mbsrstr (const qse_mchar_t* str, const qse_mchar_t* sub)
{
return qse_mbsxnrstr (str, qse_mbslen(str), sub, qse_mbslen(sub));
}
qse_mchar_t* qse_mbsxrstr (
const qse_mchar_t* str, qse_size_t size, const qse_mchar_t* sub)
{
return qse_mbsxnrstr (str, size, sub, qse_mbslen(sub));
}
qse_mchar_t* qse_mbsxnrstr (
const qse_mchar_t* str, qse_size_t strsz,
const qse_mchar_t* sub, qse_size_t subsz)
{
const qse_mchar_t* p = str + strsz;
const qse_mchar_t* subp = sub + subsz;
if (subsz == 0) return (qse_mchar_t*)p;
if (strsz < subsz) return QSE_NULL;
p = p - subsz;
while (p >= str)
{
const qse_mchar_t* x = p;
const qse_mchar_t* y = sub;
while (1)
{
if (y >= subp) return (qse_mchar_t*)p;
if (*x != *y) break;
x++; y++;
}
p--;
}
return QSE_NULL;
}
qse_mchar_t* qse_mbsrcasestr (const qse_mchar_t* str, const qse_mchar_t* sub)
{
return qse_mbsxnrcasestr (str, qse_mbslen(str), sub, qse_mbslen(sub));
}
qse_mchar_t* qse_mbsxrcasestr (
const qse_mchar_t* str, qse_size_t size, const qse_mchar_t* sub)
{
return qse_mbsxnrcasestr (str, size, sub, qse_mbslen(sub));
}
qse_mchar_t* qse_mbsxnrcasestr (
const qse_mchar_t* str, qse_size_t strsz,
const qse_mchar_t* sub, qse_size_t subsz)
{
const qse_mchar_t* p = str + strsz;
const qse_mchar_t* subp = sub + subsz;
if (subsz == 0) return (qse_mchar_t*)p;
if (strsz < subsz) return QSE_NULL;
p = p - subsz;
while (p >= str)
{
const qse_mchar_t* x = p;
const qse_mchar_t* y = sub;
while (1)
{
if (y >= subp) return (qse_mchar_t*)p;
if (QSE_TOMUPPER(*x) != QSE_TOMUPPER(*y)) break;
x++; y++;
}
p--;
}
return QSE_NULL;
}
qse_wchar_t* qse_wcsstr (const qse_wchar_t* str, const qse_wchar_t* sub)
{
const qse_wchar_t* x, * y;
y = sub;
if (*y == QSE_WT('\0')) return (qse_wchar_t*)str;
while (*str != QSE_WT('\0'))
{
if (*str != *y)
{
str++;
continue;
}
x = str;
do
{
if (*y == QSE_WT('\0')) return (qse_wchar_t*)str;
if (*x++ != *y++) break;
}
while (1);
y = sub;
str++;
}
return QSE_NULL;
}
qse_wchar_t* qse_wcsxstr (
const qse_wchar_t* str, qse_size_t size, const qse_wchar_t* sub)
{
return qse_wcsxnstr (str, size, sub, qse_wcslen(sub));
}
qse_wchar_t* qse_wcsxnstr (
const qse_wchar_t* str, qse_size_t strsz,
const qse_wchar_t* sub, qse_size_t subsz)
{
const qse_wchar_t* end, * subp;
if (subsz == 0) return (qse_wchar_t*)str;
if (strsz < subsz) return QSE_NULL;
end = str + strsz - subsz;
subp = sub + subsz;
while (str <= end)
{
const qse_wchar_t* x = str;
const qse_wchar_t* y = sub;
while (1)
{
if (y >= subp) return (qse_wchar_t*)str;
if (*x != *y) break;
x++; y++;
}
str++;
}
return QSE_NULL;
}
qse_wchar_t* qse_wcscasestr (const qse_wchar_t* str, const qse_wchar_t* sub)
{
const qse_wchar_t* x, * y;
y = sub;
if (*y == QSE_WT('\0')) return (qse_wchar_t*)str;
while (*str != QSE_WT('\0'))
{
if (QSE_TOWUPPER(*str) != QSE_TOWUPPER(*y))
{
str++;
continue;
}
x = str;
while (1)
{
if (*y == QSE_WT('\0')) return (qse_wchar_t*)str;
if (QSE_TOWUPPER(*x) != QSE_TOWUPPER(*y)) break;
x++; y++;
}
y = sub;
str++;
}
return QSE_NULL;
}
qse_wchar_t* qse_wcsxcasestr (
const qse_wchar_t* str, qse_size_t size, const qse_wchar_t* sub)
{
return qse_wcsxncasestr (str, size, sub, qse_wcslen(sub));
}
qse_wchar_t* qse_wcsxncasestr (
const qse_wchar_t* str, qse_size_t strsz,
const qse_wchar_t* sub, qse_size_t subsz)
{
const qse_wchar_t* end, * subp;
if (subsz == 0) return (qse_wchar_t*)str;
if (strsz < subsz) return QSE_NULL;
end = str + strsz - subsz;
subp = sub + subsz;
while (str <= end)
{
const qse_wchar_t* x = str;
const qse_wchar_t* y = sub;
while (1)
{
if (y >= subp) return (qse_wchar_t*)str;
if (QSE_TOWUPPER(*x) != QSE_TOWUPPER(*y)) break;
x++; y++;
}
str++;
}
return QSE_NULL;
}
qse_wchar_t* qse_wcsrstr (const qse_wchar_t* str, const qse_wchar_t* sub)
{
return qse_wcsxnrstr (str, qse_wcslen(str), sub, qse_wcslen(sub));
}
qse_wchar_t* qse_wcsxrstr (
const qse_wchar_t* str, qse_size_t size, const qse_wchar_t* sub)
{
return qse_wcsxnrstr (str, size, sub, qse_wcslen(sub));
}
qse_wchar_t* qse_wcsxnrstr (
const qse_wchar_t* str, qse_size_t strsz,
const qse_wchar_t* sub, qse_size_t subsz)
{
const qse_wchar_t* p = str + strsz;
const qse_wchar_t* subp = sub + subsz;
if (subsz == 0) return (qse_wchar_t*)p;
if (strsz < subsz) return QSE_NULL;
p = p - subsz;
while (p >= str)
{
const qse_wchar_t* x = p;
const qse_wchar_t* y = sub;
while (1)
{
if (y >= subp) return (qse_wchar_t*)p;
if (*x != *y) break;
x++; y++;
}
p--;
}
return QSE_NULL;
}
qse_wchar_t* qse_wcsrcasestr (const qse_wchar_t* str, const qse_wchar_t* sub)
{
return qse_wcsxnrcasestr (str, qse_wcslen(str), sub, qse_wcslen(sub));
}
qse_wchar_t* qse_wcsxrcasestr (
const qse_wchar_t* str, qse_size_t size, const qse_wchar_t* sub)
{
return qse_wcsxnrcasestr (str, size, sub, qse_wcslen(sub));
}
qse_wchar_t* qse_wcsxnrcasestr (
const qse_wchar_t* str, qse_size_t strsz,
const qse_wchar_t* sub, qse_size_t subsz)
{
const qse_wchar_t* p = str + strsz;
const qse_wchar_t* subp = sub + subsz;
if (subsz == 0) return (qse_wchar_t*)p;
if (strsz < subsz) return QSE_NULL;
p = p - subsz;
while (p >= str)
{
const qse_wchar_t* x = p;
const qse_wchar_t* y = sub;
while (1)
{
if (y >= subp) return (qse_wchar_t*)p;
if (QSE_TOWUPPER(*x) != QSE_TOWUPPER(*y)) break;
x++; y++;
}
p--;
}
return QSE_NULL;
}

View File

@ -154,7 +154,6 @@ static int eval_entity (qse_scm_t* scm)
car = PAIR_CAR(scm->e.cod); car = PAIR_CAR(scm->e.cod);
if (SYNT(car)) if (SYNT(car))
{ {
qse_printf (QSE_T("xxxxx\n"));
/* the first item in the list is a syntax symbol */ /* the first item in the list is a syntax symbol */
cdr = PAIR_CDR(scm->e.cod); cdr = PAIR_CDR(scm->e.cod);
if (IS_SMALLINT(scm,cdr) || TYPE(cdr) != QSE_SCM_ENT_PAIR) if (IS_SMALLINT(scm,cdr) || TYPE(cdr) != QSE_SCM_ENT_PAIR)

View File

@ -42,7 +42,7 @@ WVList
0 0
10 10
WPickList WPickList
45 46
11 11
MItem MItem
3 3
@ -691,8 +691,8 @@ WVList
0 0
155 155
MItem MItem
34 32
..\..\..\..\..\lib\cmn\str_subst.c ..\..\..\..\..\lib\cmn\str_str.c
156 156
WString WString
4 4
@ -709,8 +709,8 @@ WVList
0 0
159 159
MItem MItem
32 34
..\..\..\..\..\lib\cmn\str_utl.c ..\..\..\..\..\lib\cmn\str_subst.c
160 160
WString WString
4 4
@ -727,8 +727,8 @@ WVList
0 0
163 163
MItem MItem
29 32
..\..\..\..\..\lib\cmn\time.c ..\..\..\..\..\lib\cmn\str_utl.c
164 164
WString WString
4 4
@ -745,8 +745,8 @@ WVList
0 0
167 167
MItem MItem
28 29
..\..\..\..\..\lib\cmn\tio.c ..\..\..\..\..\lib\cmn\time.c
168 168
WString WString
4 4
@ -763,8 +763,8 @@ WVList
0 0
171 171
MItem MItem
32 28
..\..\..\..\..\lib\cmn\tio_get.c ..\..\..\..\..\lib\cmn\tio.c
172 172
WString WString
4 4
@ -782,7 +782,7 @@ WVList
175 175
MItem MItem
32 32
..\..\..\..\..\lib\cmn\tio_put.c ..\..\..\..\..\lib\cmn\tio_get.c
176 176
WString WString
4 4
@ -799,8 +799,8 @@ WVList
0 0
179 179
MItem MItem
28 32
..\..\..\..\..\lib\cmn\xma.c ..\..\..\..\..\lib\cmn\tio_put.c
180 180
WString WString
4 4
@ -817,26 +817,26 @@ WVList
0 0
183 183
MItem MItem
3 28
*.h ..\..\..\..\..\lib\cmn\xma.c
184 184
WString WString
3 4
NIL COBJ
185 185
WVList WVList
0 0
186 186
WVList WVList
0 0
-1 11
1 1
1 1
0 0
187 187
MItem MItem
28 3
..\..\..\..\..\lib\cmn\mem.h *.h
188 188
WString WString
3 3
@ -847,14 +847,14 @@ WVList
190 190
WVList WVList
0 0
183 -1
1 1
1 1
0 0
191 191
MItem MItem
32 28
..\..\..\..\..\lib\cmn\syscall.h ..\..\..\..\..\lib\cmn\mem.h
192 192
WString WString
3 3
@ -865,7 +865,25 @@ WVList
194 194
WVList WVList
0 0
183 187
1
1
0
195
MItem
32
..\..\..\..\..\lib\cmn\syscall.h
196
WString
3
NIL
197
WVList
0
198
WVList
0
187
1 1
1 1
0 0

View File

@ -0,0 +1,129 @@
40
targetIdent
0
MProject
1
MComponent
0
2
WString
4
NEXE
3
WString
5
nc2eo
1
0
1
4
MCommand
0
5
MCommand
0
6
MItem
10
qsescm.exe
7
WString
4
NEXE
8
WVList
2
9
MVState
10
WString
7
WINLINK
11
WString
28
?????Library directories(;):
1
12
WString
27
../../lib/cmn ../../lib/scm
0
13
MVState
14
WString
7
WINLINK
15
WString
18
?????Libraries(,):
1
16
WString
19
qsecmn qsescm psapi
0
17
WVList
0
-1
1
1
0
18
WPickList
2
19
MItem
3
*.c
20
WString
4
COBJ
21
WVList
1
22
MVState
23
WString
3
WCC
24
WString
25
n????Include directories:
1
25
WString
53
"$(%watcom)/h;$(%watcom)/h/nt;..\..\..\..\..\include"
0
26
WVList
0
-1
1
1
0
27
MItem
28
..\..\..\..\..\cmd\scm\scm.c
28
WString
4
COBJ
29
WVList
0
30
WVList
0
19
1
1
0

View File

@ -0,0 +1,889 @@
40
targetIdent
0
MProject
1
MComponent
0
2
WString
3
LIB
3
WString
5
n_2so
1
0
1
4
MCommand
0
5
MCommand
0
6
MItem
10
qsecmn.lib
7
WString
3
LIB
8
WVList
0
9
WVList
0
-1
1
1
0
10
WPickList
46
11
MItem
3
*.c
12
WString
4
COBJ
13
WVList
1
14
MVState
15
WString
3
WCC
16
WString
25
n????Include directories:
1
17
WString
53
"$(%watcom)/h;$(%watcom)/h/nt;..\..\..\..\..\include"
0
18
WVList
0
-1
1
1
0
19
MItem
35
..\..\..\..\..\lib\cmn\alg_search.c
20
WString
4
COBJ
21
WVList
0
22
WVList
0
11
1
1
0
23
MItem
33
..\..\..\..\..\lib\cmn\alg_sort.c
24
WString
4
COBJ
25
WVList
0
26
WVList
0
11
1
1
0
27
MItem
31
..\..\..\..\..\lib\cmn\assert.c
28
WString
4
COBJ
29
WVList
0
30
WVList
0
11
1
1
0
31
MItem
28
..\..\..\..\..\lib\cmn\chr.c
32
WString
4
COBJ
33
WVList
0
34
WVList
0
11
1
1
0
35
MItem
32
..\..\..\..\..\lib\cmn\chr_cnv.c
36
WString
4
COBJ
37
WVList
0
38
WVList
0
11
1
1
0
39
MItem
28
..\..\..\..\..\lib\cmn\dll.c
40
WString
4
COBJ
41
WVList
0
42
WVList
0
11
1
1
0
43
MItem
28
..\..\..\..\..\lib\cmn\fio.c
44
WString
4
COBJ
45
WVList
0
46
WVList
0
11
1
1
0
47
MItem
28
..\..\..\..\..\lib\cmn\fma.c
48
WString
4
COBJ
49
WVList
0
50
WVList
0
11
1
1
0
51
MItem
28
..\..\..\..\..\lib\cmn\gdl.c
52
WString
4
COBJ
53
WVList
0
54
WVList
0
11
1
1
0
55
MItem
28
..\..\..\..\..\lib\cmn\htb.c
56
WString
4
COBJ
57
WVList
0
58
WVList
0
11
1
1
0
59
MItem
28
..\..\..\..\..\lib\cmn\lda.c
60
WString
4
COBJ
61
WVList
0
62
WVList
0
11
1
1
0
63
MItem
29
..\..\..\..\..\lib\cmn\main.c
64
WString
4
COBJ
65
WVList
0
66
WVList
0
11
1
1
0
67
MItem
28
..\..\..\..\..\lib\cmn\mem.c
68
WString
4
COBJ
69
WVList
0
70
WVList
0
11
1
1
0
71
MItem
29
..\..\..\..\..\lib\cmn\misc.c
72
WString
4
COBJ
73
WVList
0
74
WVList
0
11
1
1
0
75
MItem
28
..\..\..\..\..\lib\cmn\oht.c
76
WString
4
COBJ
77
WVList
0
78
WVList
0
11
1
1
0
79
MItem
28
..\..\..\..\..\lib\cmn\opt.c
80
WString
4
COBJ
81
WVList
0
82
WVList
0
11
1
1
0
83
MItem
28
..\..\..\..\..\lib\cmn\pio.c
84
WString
4
COBJ
85
WVList
0
86
WVList
0
11
1
1
0
87
MItem
28
..\..\..\..\..\lib\cmn\rbt.c
88
WString
4
COBJ
89
WVList
0
90
WVList
0
11
1
1
0
91
MItem
28
..\..\..\..\..\lib\cmn\rex.c
92
WString
4
COBJ
93
WVList
0
94
WVList
0
11
1
1
0
95
MItem
28
..\..\..\..\..\lib\cmn\sio.c
96
WString
4
COBJ
97
WVList
0
98
WVList
0
11
1
1
0
99
MItem
28
..\..\..\..\..\lib\cmn\sll.c
100
WString
4
COBJ
101
WVList
0
102
WVList
0
11
1
1
0
103
MItem
30
..\..\..\..\..\lib\cmn\stdio.c
104
WString
4
COBJ
105
WVList
0
106
WVList
0
11
1
1
0
107
MItem
32
..\..\..\..\..\lib\cmn\str_bas.c
108
WString
4
COBJ
109
WVList
0
110
WVList
0
11
1
1
0
111
MItem
32
..\..\..\..\..\lib\cmn\str_cat.c
112
WString
4
COBJ
113
WVList
0
114
WVList
0
11
1
1
0
115
MItem
32
..\..\..\..\..\lib\cmn\str_chr.c
116
WString
4
COBJ
117
WVList
0
118
WVList
0
11
1
1
0
119
MItem
32
..\..\..\..\..\lib\cmn\str_cmp.c
120
WString
4
COBJ
121
WVList
0
122
WVList
0
11
1
1
0
123
MItem
32
..\..\..\..\..\lib\cmn\str_cnv.c
124
WString
4
COBJ
125
WVList
0
126
WVList
0
11
1
1
0
127
MItem
32
..\..\..\..\..\lib\cmn\str_cpy.c
128
WString
4
COBJ
129
WVList
0
130
WVList
0
11
1
1
0
131
MItem
32
..\..\..\..\..\lib\cmn\str_dup.c
132
WString
4
COBJ
133
WVList
0
134
WVList
0
11
1
1
0
135
MItem
32
..\..\..\..\..\lib\cmn\str_dyn.c
136
WString
4
COBJ
137
WVList
0
138
WVList
0
11
1
1
0
139
MItem
33
..\..\..\..\..\lib\cmn\str_fcpy.c
140
WString
4
COBJ
141
WVList
0
142
WVList
0
11
1
1
0
143
MItem
33
..\..\..\..\..\lib\cmn\str_pbrk.c
144
WString
4
COBJ
145
WVList
0
146
WVList
0
11
1
1
0
147
MItem
32
..\..\..\..\..\lib\cmn\str_put.c
148
WString
4
COBJ
149
WVList
0
150
WVList
0
11
1
1
0
151
MItem
32
..\..\..\..\..\lib\cmn\str_spn.c
152
WString
4
COBJ
153
WVList
0
154
WVList
0
11
1
1
0
155
MItem
32
..\..\..\..\..\lib\cmn\str_str.c
156
WString
4
COBJ
157
WVList
0
158
WVList
0
11
1
1
0
159
MItem
34
..\..\..\..\..\lib\cmn\str_subst.c
160
WString
4
COBJ
161
WVList
0
162
WVList
0
11
1
1
0
163
MItem
32
..\..\..\..\..\lib\cmn\str_utl.c
164
WString
4
COBJ
165
WVList
0
166
WVList
0
11
1
1
0
167
MItem
29
..\..\..\..\..\lib\cmn\time.c
168
WString
4
COBJ
169
WVList
0
170
WVList
0
11
1
1
0
171
MItem
28
..\..\..\..\..\lib\cmn\tio.c
172
WString
4
COBJ
173
WVList
0
174
WVList
0
11
1
1
0
175
MItem
32
..\..\..\..\..\lib\cmn\tio_get.c
176
WString
4
COBJ
177
WVList
0
178
WVList
0
11
1
1
0
179
MItem
32
..\..\..\..\..\lib\cmn\tio_put.c
180
WString
4
COBJ
181
WVList
0
182
WVList
0
11
1
1
0
183
MItem
28
..\..\..\..\..\lib\cmn\xma.c
184
WString
4
COBJ
185
WVList
0
186
WVList
0
11
1
1
0
187
MItem
3
*.h
188
WString
3
NIL
189
WVList
0
190
WVList
0
-1
1
1
0
191
MItem
28
..\..\..\..\..\lib\cmn\mem.h
192
WString
3
NIL
193
WVList
0
194
WVList
0
187
1
1
0
195
MItem
32
..\..\..\..\..\lib\cmn\syscall.h
196
WString
3
NIL
197
WVList
0
198
WVList
0
187
1
1
0

View File

@ -0,0 +1,223 @@
40
targetIdent
0
MProject
1
MComponent
0
2
WString
3
LIB
3
WString
5
n_2so
1
0
1
4
MCommand
0
5
MCommand
0
6
MItem
10
qsescm.lib
7
WString
3
LIB
8
WVList
0
9
WVList
0
-1
1
1
0
10
WPickList
9
11
MItem
3
*.c
12
WString
4
COBJ
13
WVList
1
14
MVState
15
WString
3
WCC
16
WString
25
n????Include directories:
1
17
WString
53
"$(%watcom)/h;$(%watcom)/h/nt;..\..\..\..\..\include"
0
18
WVList
0
-1
1
1
0
19
MItem
28
..\..\..\..\..\lib\scm\err.c
20
WString
4
COBJ
21
WVList
0
22
WVList
0
11
1
1
0
23
MItem
29
..\..\..\..\..\lib\scm\eval.c
24
WString
4
COBJ
25
WVList
0
26
WVList
0
11
1
1
0
27
MItem
28
..\..\..\..\..\lib\scm\mem.c
28
WString
4
COBJ
29
WVList
0
30
WVList
0
11
1
1
0
31
MItem
30
..\..\..\..\..\lib\scm\print.c
32
WString
4
COBJ
33
WVList
0
34
WVList
0
11
1
1
0
35
MItem
29
..\..\..\..\..\lib\scm\read.c
36
WString
4
COBJ
37
WVList
0
38
WVList
0
11
1
1
0
39
MItem
28
..\..\..\..\..\lib\scm\scm.c
40
WString
4
COBJ
41
WVList
0
42
WVList
0
11
1
1
0
43
MItem
3
*.h
44
WString
3
NIL
45
WVList
0
46
WVList
0
-1
1
1
0
47
MItem
28
..\..\..\..\..\lib\scm\scm.h
48
WString
3
NIL
49
WVList
0
50
WVList
0
43
1
1
0

View File

@ -4,8 +4,8 @@ projectIdent
VpeMain VpeMain
1 1
WRect WRect
680 0
400 80
9320 9320
9120 9120
2 2
@ -16,7 +16,7 @@ MCommand
4 4
MCommand MCommand
0 0
8 11
5 5
WFileName WFileName
30 30
@ -50,30 +50,26 @@ WFileName
28 28
debug/os2/cmd/scm/qsescm.tgt debug/os2/cmd/scm/qsescm.tgt
13 13
WVList
8
14
VComponent
15
WRect
290
1880
5700
4240
0
0
16
WFileName WFileName
30 30
release/os2/lib/cmn/qsecmn.tgt debug/win32/lib/cmn/qsecmn.tgt
22 14
29 WFileName
30
debug/win32/lib/scm/qsescm.tgt
15
WFileName
30
debug/win32/cmd/scm/qsescm.tgt
16
WVList
11
17 17
VComponent VComponent
18 18
WRect WRect
90 290
680 1880
5700 5700
4240 4240
1 1
@ -81,15 +77,15 @@ WRect
19 19
WFileName WFileName
30 30
release/os2/lib/sed/qsesed.tgt release/os2/lib/cmn/qsecmn.tgt
0 22
0 24
20 20
VComponent VComponent
21 21
WRect WRect
2100 90
840 680
5700 5700
4240 4240
1 1
@ -97,15 +93,15 @@ WRect
22 22
WFileName WFileName
30 30
release/os2/cmd/sed/qsesed.tgt release/os2/lib/sed/qsesed.tgt
0
0 0
1
23 23
VComponent VComponent
24 24
WRect WRect
590 2100
520 840
5700 5700
4240 4240
1 1
@ -113,31 +109,31 @@ WRect
25 25
WFileName WFileName
30 30
release/os2/lib/scm/qsescm.tgt release/os2/cmd/sed/qsesed.tgt
0 0
2 1
26 26
VComponent VComponent
27 27
WRect WRect
1340 590
400 520
5700 5700
4240 4240
0 1
0 0
28 28
WFileName WFileName
28 30
debug/os2/lib/cmn/qsecmn.tgt release/os2/lib/scm/qsescm.tgt
24 0
29 2
29 29
VComponent VComponent
30 30
WRect WRect
1050 110
1800 -160
5700 5700
4240 4240
1 1
@ -145,39 +141,103 @@ WRect
31 31
WFileName WFileName
28 28
debug/os2/lib/sed/qsesed.tgt debug/os2/lib/cmn/qsecmn.tgt
0 0
5 5
32 32
VComponent VComponent
33 33
WRect WRect
3280 1050
1320 1800
5700 5700
4240 4240
0 1
0 0
34 34
WFileName WFileName
28 28
debug/os2/lib/scm/qsescm.tgt debug/os2/lib/sed/qsesed.tgt
0 0
5 5
35 35
VComponent VComponent
36 36
WRect WRect
80 2360
80 720
5700 5700
4240 4240
0 1
0 0
37 37
WFileName WFileName
28 28
debug/os2/lib/scm/qsescm.tgt
0
6
38
VComponent
39
WRect
3660
-240
5700
4240
1
0
40
WFileName
28
debug/os2/cmd/scm/qsescm.tgt debug/os2/cmd/scm/qsescm.tgt
0 0
1 1
14 41
VComponent
42
WRect
1200
26
5700
4253
0
0
43
WFileName
30
debug/win32/lib/cmn/qsecmn.tgt
0
6
44
VComponent
45
WRect
240
893
5700
4253
0
0
46
WFileName
30
debug/win32/lib/scm/qsescm.tgt
0
0
47
VComponent
48
WRect
3060
640
5700
4253
0
0
49
WFileName
30
debug/win32/cmd/scm/qsescm.tgt
0
1
44

View File

@ -42,7 +42,7 @@ WVList
0 0
10 10
WPickList WPickList
45 46
11 11
MItem MItem
3 3
@ -755,8 +755,8 @@ WVList
0 0
171 171
MItem MItem
34 32
..\..\..\..\..\lib\cmn\str_subst.c ..\..\..\..\..\lib\cmn\str_str.c
172 172
WString WString
4 4
@ -773,48 +773,48 @@ WVList
0 0
175 175
MItem MItem
32 34
..\..\..\..\..\lib\cmn\str_utl.c ..\..\..\..\..\lib\cmn\str_subst.c
176 176
WString WString
4 4
COBJ COBJ
177 177
WVList WVList
1
178
MVState
179
WString
3
WCC
180
WString
25
o?2??Include directories:
1
181
WString
54
"$(%watcom)/h;$(%watcom)/h/os2;..\..\..\..\..\include"
0 0
182 178
WVList WVList
0 0
11 11
1 1
1 1
0 0
183 179
MItem MItem
29 32
..\..\..\..\..\lib\cmn\time.c ..\..\..\..\..\lib\cmn\str_utl.c
184 180
WString WString
4 4
COBJ COBJ
185 181
WVList WVList
1
182
MVState
183
WString
3
WCC
184
WString
25
o?2??Include directories:
1
185
WString
54
"$(%watcom)/h;$(%watcom)/h/os2;..\..\..\..\..\include"
0 0
186 186
WVList WVList
@ -825,8 +825,8 @@ WVList
0 0
187 187
MItem MItem
28 29
..\..\..\..\..\lib\cmn\tio.c ..\..\..\..\..\lib\cmn\time.c
188 188
WString WString
4 4
@ -843,8 +843,8 @@ WVList
0 0
191 191
MItem MItem
32 28
..\..\..\..\..\lib\cmn\tio_get.c ..\..\..\..\..\lib\cmn\tio.c
192 192
WString WString
4 4
@ -862,7 +862,7 @@ WVList
195 195
MItem MItem
32 32
..\..\..\..\..\lib\cmn\tio_put.c ..\..\..\..\..\lib\cmn\tio_get.c
196 196
WString WString
4 4
@ -879,8 +879,8 @@ WVList
0 0
199 199
MItem MItem
28 32
..\..\..\..\..\lib\cmn\xma.c ..\..\..\..\..\lib\cmn\tio_put.c
200 200
WString WString
4 4
@ -897,26 +897,26 @@ WVList
0 0
203 203
MItem MItem
3 28
*.h ..\..\..\..\..\lib\cmn\xma.c
204 204
WString WString
3 4
NIL COBJ
205 205
WVList WVList
0 0
206 206
WVList WVList
0 0
-1 11
1 1
1 1
0 0
207 207
MItem MItem
28 3
..\..\..\..\..\lib\cmn\mem.h *.h
208 208
WString WString
3 3
@ -927,14 +927,14 @@ WVList
210 210
WVList WVList
0 0
203 -1
1 1
1 1
0 0
211 211
MItem MItem
32 28
..\..\..\..\..\lib\cmn\syscall.h ..\..\..\..\..\lib\cmn\mem.h
212 212
WString WString
3 3
@ -945,7 +945,25 @@ WVList
214 214
WVList WVList
0 0
203 207
1
1
0
215
MItem
32
..\..\..\..\..\lib\cmn\syscall.h
216
WString
3
NIL
217
WVList
0
218
WVList
0
207
1 1
1 1
0 0