                          *** HyperString v1.0 ***
                  (c)1996 EFD Systems, All rights reserved
                      72627,3026 or efd@mindspring.com

                 *** THIS IS NOT PUBLIC DOMAIN SOFTWARE ***
              See below for license agreement and disclaimer.

    Introduction ---------------------------------------------------------

    Welcome to HyperString!

    One of the most significant new features added to Object Pascal with
    Delphi32 is long dynamic strings.  However, the built-in functions
    don't even come close to realizing the full potential of these new
    strings. To fully exploit the power of this highly versatile new data
    type, you need HyperString; a comprehensive library of well over 100
    efficient, sophisticated string management functions. The following is
    a small taste of what HyperString has to offer.


    A Taste of HyperString -----------------------------------------------

    With the new 32-bit strings, it's almost trivial to create efficient
    DYNAMIC sets and lookup tables.  Consider this simple example:

             function StateOK(const State:AnsiString):Boolean;
             begin
               Result:=Pos(State,StateTable)>0;
             end;

    This is the complete implementation (minus the string declaration and
    initialization) of a fully dynamic lookup table for validating a user's
    State abbreviation against an approved StateTable list.  Since this
    table is a string, it can be easily initialized like this:

                      StateTable:='TX:NY:CA:NV:GA:FL';

    And since this string is DYNAMIC, states can be added and removed
    on-the-fly and the string manager will always re-size the table to fit.
    Compare this implementation to any other which achieves a similar level
    of efficiency, flexibility and ease of use without dynamic strings.

    Only semi-impressed with this simple example? Well, with HyperString,
    this is just the beginning! Using additional delimiters and
    HyperString's unique set of tokenized string functions, the above table
    can be expanded into a sophisticated, multi-dimensional database.  Any
    state entry (TX for example) can be expanded to include cities like so:

           StateTable:='TX,Austin,Houston,Dallas:NY:CA:NV:GA:FL';

    But that's not all! Using another delimiter (perhaps a semi-colon),
    districts can be added to each city.  Using yet another delimiter,
    sub-divisions can be added to each district and on and on.  The only
    limits are available memory, available delimiters and your imagination.

    HyperString makes it easy to create, count, search, retrieve, insert,
    delete and replace tokenized fields and records.


    Installation ---------------------------------------------------------

    Installing the HyperString library is as easy as 1-2-3:

    1) Copy HYPERSTR.DCU to your Delphi Library directory.
       (..\DELPHI\LIB)

    2) Copy HYPERSTR.HLP and HYPERSTR.CNT to your Delphi Help directory.
       (..\DELPHI\HELP)

    3) (Optional, but highly recommended) With minimal additional effort,
       HyperString's WinHelp docs can be seamlessly integrated into the
       Delphi on-line Help.

       First, make a backup copy of ..\DELPHI\HELP\DELPHI.CNT

       Edit DELPHI.CNT (it's a simple text file) using NOTEPAD, WORDPAD or
       the ASCII editor of your choice.  Insert 2 lines as follows:

       --------------------------------------------------------------
       Insert as Line #3   > :Index HyperString Library =hyperstr.hlp

       Insert as Last Line > :Include hyperstr.cnt
       --------------------------------------------------------------

       The colons are to be added as part of the line. Once you've finished
       editing, DELPHI.CNT should look something like this:

       --------------------------------------------------------------
          :Base delphi.HLP>main
          :Title Delphi Help
          :Index HyperString Library =hyperstr.hlp
                    .
                    .
                    .
          :Include hyperstr.cnt

       --------------------------------------------------------------

       NOTE:

       Be sure to press [Enter] after typing the last line. WinHelp will
       ignore any lines that are not terminated by a CR/LF pair. In other
       words, the very last line in DELPHI.CNT should appear to be an empty
       line as shown above.

       Save the file and you're done!

       The next time you access Delphi's Help, you'll receive the message,
       "Preparing Help files for first use" as WinHelp rebuilds the
       indexes to include HyperString. Once complete, you should see a new
       entry for HyperString at the bottom of the Contents page and entries
       for the HyperString routines in the Index.


    Using HyperString ----------------------------------------------------

    HyperString is a non-visual library.  Once installed, simply add
    'HyperStr' to the 'Uses' clause in your application and you're ready to
    make use all of the HyperString routines.


    Ordering HyperString -------------------------------------------------

    Once you use HyperString, you may decide that you would like to have
    the full source code.  Currently there are 3 ways to order.

    1) From the World Wide Web.  Using a major credit and a secure link
    from our web site at:

    http://www.mindspring.com/~efd

    2) By mail.  Send check or money order for $30 + $2 shipping (US
    banks only) to:

    EFD Systems
    304 Smokerise Circle
    Marietta, GA 30067

    3) From CompuServe.  This option has the advantage of immediate
    electronic delivery of the source code and no shipping fee.

    Type "GO SWREG" and download #14172


    UnInstall ------------------------------------------------------------

    Should you decide that HyperString is not for you (unlikely but
    possible <g>), delete the 3 files mentioned above.  If you modified
    DELPHI.CNT, simply re-edit the file and delete the 2 lines that were
    added or better yet, overwrite the file with the backup copy.


    License Agreement and Disclaimer -------------------------------------

                 *** THIS IS NOT PUBLIC DOMAIN SOFTWARE ***

    By using this software, you indicate your acceptance of the terms
    and conditions below.

    This software (the product) is Copyright 1996, EFD Systems.  All rights
    are reserved by the author.  Except as detailed herein, you are granted
    a license to use this software without payment of fees. You may
    distribute the compiled software (but not the source code) to others
    for similar use, provided that no fees are charged (excluding on-line
    access fees) and the software is distributed in it's entirety,
    including this documentation file.

    This software shall NOT be used in the production of any similar or
    competing product which reproduces or duplicates some or all of this
    product's features and functionality.  If your intended use does not
    clearly conform to these requirements, you must request and receive
    written permission from the author before using the software.

    A source code license (if purchased) grants the user the right to view
    and modify the source code on a private, personal use basis.  Machine
    readable object code derived from the source may be incorporated into
    software authored by the user.  The source code itself remains the
    proprietary property of EFD Systems and shall not be reproduced or
    redistributed under any circumstances.  Any such distribution; whether
    deliberate, the result of negligence or otherwise, shall be considered
    a willful, intentional copyright violation.

    THIS SOFTWARE IS PROVIDED SOLELY AS-IS AND WITHOUT WARRANTY INCLUDING
    WITHOUT LIMITATION THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR
    FITNESS FOR A PARTICULAR PURPOSE.  THE USER AGREES TO INDEMNIFY AND
    HOLD THE AUTHOR HARMLESS FROM AND AGAINST ANY AND ALL CLAIMS ARISING
    FROM OR RELATED TO USE OF THE PRODUCT. UNDER NO CIRCUMSTANCES SHALL THE
    AUTHOR'S LIABILITY EXCEED THE SOFTWARE LICENSE FEE.

    By using this software, you indicate your acceptance of the terms and
    conditions above.


    Revision History -----------------------------------------------------

    v1.0 - 96/12/25, Original release (Happy holidays).
