## root/include/parse.h

/* [<][>][^][v][top][bottom][index][help] */

## INCLUDED FROM

    /* General purpose parse module header.
       Rick Smereka, Copyright (C) 1992-2002.

       This program is free software; you can redistribute it and/or modify
       it under the terms of the GNU General Public License as published by
       the Free Software Foundation; either version 2 of the License, or
       (at your option) any later version.

       This program 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 General Public License for more details.

       You should have received a copy of the GNU General Public License
       along with this program; if not, get a copy via the Internet at
       http://gnu.org/copyleft/gpl.html or write to the Free Software
       Foundation, Inc., 59 Temple Place, Suite 330, Boston,
       MA 02111-1307 USA

       You can contact the author via email at rsmereka@future-lab.com

       Original DOS version Jan/92, Rick Smereka

       Added prototype for function 'sub_string'. Feb/98,
       Rick Smereka

       Port to QNX V4.23a Mar/98, Rick Smereka

       Added detection of C++ compiler with instructions not to
       mangle the function names. Nov/98, Rick Smereka

       Ported to 32bit Windows under CodeWarrior V4.
       Dec/98, Rick Smereka

       Ported to HP-UX under GNU C 2.8.1.
       Jan/99, Rick Smereka

       Added prototype of function 'logic_string_2_flag'. Mar/99,
       Rick Smereka

       Ported to Red Hat Linux 5.2, Jul/99, Rick Smereka

       Added prototype of function 'isip'. Oct/99,
       Rick Smereka

       Added prototype of function 'initqstring'. Mar/2000,
       Rick Smereka

       Modified so that the function prototypes 'stricmp' and
       'strnicmp' are defined only if 'HAS_STRICMP' is not
       defined. Apr/2000, Rick Smereka

       Removed the prototype 'isip' and placed into the TCP/IP
       utility library header 'ip.h'. Jul/2000, Rick Smereka

       Added prototype of the function 'pmatch'. Feb/2001,
       Rick Smereka

       Added prototype of the function 'get_time'. Oct/2001,
       Rick Smereka

       Added prototypes 'lpad' and 'rpad'. Apr/2002,
       Rick Smereka

       Moved prototype 'get_time' from this file to 'datime.h'.
       May/2002, Rick Smereka

       Added prototype 'strip_space'. Jul/2002, Rick Smereka

       Ported to Debian Linux. Nov/2002, Rick Smereka */

    #define PARSE_MAXSTRING 64000          /* maximum size of string */

    #ifdef __cplusplus
    extern "C"
    {
    #endif

    void trim(char *, char *);
    int word(char *, char *, int);
    int ll_word(char *, char *, int, char);
    int wordlen(char *, int);
    int ll_wordlen(char *, int, char);
    int indxword(char *, int);
    int ll_indxword(char *, int, char);
    int words(char *);
    int ll_words(char *, char);
    int command_words(char *);
    int command_word(char *, char *, int);
    int command_indxword(char *, int);
    int command_wordlen(char *, int);
    int sub_string(char *, char *);
    int getyn(char *);
    int command_worddel(char *, char *, int);
    int worddel(char *, char *, int);
    int ll_worddel(char *, char *, int, char);
    int ll_wordput(char *, char *, char *, int, char);
    int num(char *);
    void ucase(char *, char *);
    int parse_extend(char *, char *, int, char);
    char *initstring(char *);
    char *inittstring(char *);
    char *initqstring(char *);
    int delbytes(char *, char *, int, int);
    int qatoi(char *, int *);
    int qatol(char *, long *);
    int logic_string_2_flag(char *, int *);
    int flag_2_logic_string(int, char *);
    int pmatch(char *, char *);
    void lpad(char *, char *, int, char);
    void rpad(char *, char *, int, char);
    void strip_space(char *, char *);

    #ifndef HAS_STRICMP
    int stricmp(char *, char *);
    int strnicmp(char *, char *, int);
    #endif

    #ifdef __cplusplus
    }
    #endif

/* [<][>][^][v][top][bottom][index][help] */