added qse_strspltr()
This commit is contained in:
parent
d74fa84265
commit
6df7f43935
20
qse/configure
vendored
20
qse/configure
vendored
@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.61 for qse 0.5.0.
|
||||
# Generated by GNU Autoconf 2.61 for qse 0.5.1.
|
||||
#
|
||||
# Report bugs to <bacon@abiyo.net>.
|
||||
#
|
||||
@ -728,8 +728,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
|
||||
# Identity of this package.
|
||||
PACKAGE_NAME='qse'
|
||||
PACKAGE_TARNAME='qse'
|
||||
PACKAGE_VERSION='0.5.0'
|
||||
PACKAGE_STRING='qse 0.5.0'
|
||||
PACKAGE_VERSION='0.5.1'
|
||||
PACKAGE_STRING='qse 0.5.1'
|
||||
PACKAGE_BUGREPORT='bacon@abiyo.net'
|
||||
|
||||
# Factoring default headers for most tests.
|
||||
@ -1415,7 +1415,7 @@ if test "$ac_init_help" = "long"; then
|
||||
# Omit some internal or obsolete options to make the list less imposing.
|
||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||
cat <<_ACEOF
|
||||
\`configure' configures qse 0.5.0 to adapt to many kinds of systems.
|
||||
\`configure' configures qse 0.5.1 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
@ -1485,7 +1485,7 @@ fi
|
||||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of qse 0.5.0:";;
|
||||
short | recursive ) echo "Configuration of qse 0.5.1:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
@ -1599,7 +1599,7 @@ fi
|
||||
test -n "$ac_init_help" && exit $ac_status
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
qse configure 0.5.0
|
||||
qse configure 0.5.1
|
||||
generated by GNU Autoconf 2.61
|
||||
|
||||
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
|
||||
@ -1613,7 +1613,7 @@ cat >config.log <<_ACEOF
|
||||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by qse $as_me 0.5.0, which was
|
||||
It was created by qse $as_me 0.5.1, which was
|
||||
generated by GNU Autoconf 2.61. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
@ -2313,7 +2313,7 @@ fi
|
||||
|
||||
# Define the identity of the package.
|
||||
PACKAGE='qse'
|
||||
VERSION='0.5.0'
|
||||
VERSION='0.5.1'
|
||||
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
@ -29615,7 +29615,7 @@ exec 6>&1
|
||||
# report actual input values of CONFIG_FILES etc. instead of their
|
||||
# values after options handling.
|
||||
ac_log="
|
||||
This file was extended by qse $as_me 0.5.0, which was
|
||||
This file was extended by qse $as_me 0.5.1, which was
|
||||
generated by GNU Autoconf 2.61. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
@ -29668,7 +29668,7 @@ Report bugs to <bug-autoconf@gnu.org>."
|
||||
_ACEOF
|
||||
cat >>$CONFIG_STATUS <<_ACEOF
|
||||
ac_cs_version="\\
|
||||
qse config.status 0.5.0
|
||||
qse config.status 0.5.1
|
||||
configured by $0, generated by GNU Autoconf 2.61,
|
||||
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
dnl AC_PREREQ(2.59)
|
||||
AC_INIT([qse],[0.5.0],[bacon@abiyo.net])
|
||||
AC_INIT([qse],[0.5.1],[bacon@abiyo.net])
|
||||
AC_CONFIG_HEADER([include/qse/config.h])
|
||||
AC_CONFIG_AUX_DIR(autoconf)
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: str.h 75 2009-02-22 14:10:34Z hyunghwan.chung $
|
||||
* $Id: str.h 83 2009-02-24 14:05:17Z hyunghwan.chung $
|
||||
*
|
||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||
|
||||
@ -478,6 +478,26 @@ qse_size_t qse_str_nccat (
|
||||
qse_size_t len
|
||||
);
|
||||
|
||||
/****f* Common/qse_strspltr
|
||||
* NAME
|
||||
* qse_strspltr - split a string translating special escane sequences
|
||||
* DESCRIPTION
|
||||
* The argument trset is translation character set which is composed
|
||||
* of multiple character pairs. An escape character followed by the
|
||||
* first character in a pair is translated into the second character
|
||||
* in the pair. If trset is QSE_NULL, no translation is performed.
|
||||
* SYNOPSIS
|
||||
*/
|
||||
int qse_strspltr (
|
||||
qse_char_t* str,
|
||||
const qse_char_t* delim,
|
||||
qse_char_t lquote,
|
||||
qse_char_t rquote,
|
||||
qse_char_t escape,
|
||||
const qse_char_t* trset
|
||||
);
|
||||
/******/
|
||||
|
||||
/****f* Common/qse_strspl
|
||||
* NAME
|
||||
* qse_strspl - split a string
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* $Id: str_utl.c 76 2009-02-22 14:18:06Z hyunghwan.chung $
|
||||
* $Id: str_utl.c 83 2009-02-24 14:05:17Z hyunghwan.chung $
|
||||
*
|
||||
Copyright 2006-2009 Chung, Hyung-Hwan.
|
||||
|
||||
@ -19,9 +19,10 @@
|
||||
#include <qse/cmn/str.h>
|
||||
#include "chr.h"
|
||||
|
||||
int qse_strspl (
|
||||
int qse_strspltr (
|
||||
qse_char_t* s, const qse_char_t* delim,
|
||||
qse_char_t lquote, qse_char_t rquote, qse_char_t escape)
|
||||
qse_char_t lquote, qse_char_t rquote,
|
||||
qse_char_t escape, const qse_char_t* trset)
|
||||
{
|
||||
qse_char_t* p = s, *d;
|
||||
qse_char_t* sp = QSE_NULL, * ep = QSE_NULL;
|
||||
@ -53,6 +54,19 @@ int qse_strspl (
|
||||
|
||||
if (escape != QSE_T('\0') && *p == escape)
|
||||
{
|
||||
if (trset != QSE_NULL && p[1] != QSE_T('\0'))
|
||||
{
|
||||
const qse_char_t* ep = trset;
|
||||
while (*ep != QSE_T('\0'))
|
||||
{
|
||||
if (p[1] == *ep++)
|
||||
{
|
||||
p[1] = *ep;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
qse_strcpy (p, p + 1);
|
||||
}
|
||||
else
|
||||
@ -120,6 +134,18 @@ int qse_strspl (
|
||||
|
||||
if (escape != QSE_T('\0') && *p == escape)
|
||||
{
|
||||
if (trset != QSE_NULL && p[1] != QSE_T('\0'))
|
||||
{
|
||||
const qse_char_t* ep = trset;
|
||||
while (*ep != QSE_T('\0'))
|
||||
{
|
||||
if (p[1] == *ep++)
|
||||
{
|
||||
p[1] = *ep;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
qse_strcpy (p, p + 1);
|
||||
}
|
||||
else
|
||||
@ -176,6 +202,19 @@ int qse_strspl (
|
||||
|
||||
if (escape != QSE_T('\0') && *p == escape)
|
||||
{
|
||||
if (trset != QSE_NULL && p[1] != QSE_T('\0'))
|
||||
{
|
||||
const qse_char_t* ep = trset;
|
||||
while (*ep != QSE_T('\0'))
|
||||
{
|
||||
if (p[1] == *ep++)
|
||||
{
|
||||
p[1] = *ep;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
qse_strcpy (p, p + 1);
|
||||
}
|
||||
else
|
||||
@ -256,7 +295,12 @@ exit_point:
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return cnt;
|
||||
}
|
||||
|
||||
int qse_strspl (
|
||||
qse_char_t* s, const qse_char_t* delim,
|
||||
qse_char_t lquote, qse_char_t rquote, qse_char_t escape)
|
||||
{
|
||||
return qse_strspltr (s, delim, lquote, rquote, escape, QSE_NULL);
|
||||
}
|
||||
|
@ -33,7 +33,7 @@ POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
subdir = lib/utl
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
|
Loading…
Reference in New Issue
Block a user