libtabula

Check-in [91de75b98b]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Fixed a bunch of references to *.txt, which should be *.md now.
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 91de75b98b4bd704e2359f10a7dae95c254720ad
User & Date: tangent 2015-08-14 23:34:20
Context
2015-08-14
23:45
Fixed some overzealous "MySQL" -> "libtabula" references, and clarified some details about the development history in the CREDITS.md file. check-in: 9e7ac4fc37 user: tangent tags: trunk
23:34
Fixed a bunch of references to *.txt, which should be *.md now. check-in: 91de75b98b user: tangent tags: trunk
23:23
Typo fix in a comment check-in: ebb9a16682 user: tangent tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Added .fossil-settings/crnl-glob.









>
>
>
>
1
2
3
4
examples/vstudio/mfc/*.cpp
examples/vstudio/mfc/*.h
examples/vstudio/wforms/*.cpp
examples/vstudio/wforms/*.h

Changes to doc/README-devel-RPM.txt.

1
2
3
4
5
6
7
8
9
10
libtabula-devel RPM installs the files you need when building your
own libtabula based programs, as well as documentation and examples
that can help you learn how to use the library.

The libtabula header files are in /usr/include/libtabula, the
library is in /usr/lib, and the example programs' source code is
in /usr/share/doc/libtabula-devel-*/examples.  For more information
on the examples, see the README-examples.txt file in the directory
containing the examples.








|


1
2
3
4
5
6
7
8
9
10
libtabula-devel RPM installs the files you need when building your
own libtabula based programs, as well as documentation and examples
that can help you learn how to use the library.

The libtabula header files are in /usr/include/libtabula, the
library is in /usr/lib, and the example programs' source code is
in /usr/share/doc/libtabula-devel-*/examples.  For more information
on the examples, see the README-examples.md file in the directory
containing the examples.

Changes to doc/userman/configuration.dbx.

36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
    tries a bunch of common installation locations until it finds one
    that works. If your MySQL server was installed in a nonstandard
    location, you will have to tell the <filename>configure</filename>
    script where these files are with some combination
    of the <computeroutput>--with-mysql</computeroutput>,
    <computeroutput>--with-mysql-include</computeroutput>, and
    <computeroutput>--with-mysql-lib</computeroutput> flags. See
    <filename>README-Unix.txt</filename> for details.</para>

    <para>If you need to modify the build system files, per-platform
    instructions are in
    <filename>README-Visual-Studio.txt</filename>,
    <filename>README-MinGW.txt</filename>, and
    <filename>README-Mac-OS-X.txt</filename>.</para>
  </sect2>


  <sect2 id="max-fields">
    <title>The Maximum Number of Fields Allowed</title>

    <para>libtabula offers two ways to automatically build







|



|
|
|







36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
    tries a bunch of common installation locations until it finds one
    that works. If your MySQL server was installed in a nonstandard
    location, you will have to tell the <filename>configure</filename>
    script where these files are with some combination
    of the <computeroutput>--with-mysql</computeroutput>,
    <computeroutput>--with-mysql-include</computeroutput>, and
    <computeroutput>--with-mysql-lib</computeroutput> flags. See
    <filename>README-Unix.md</filename> for details.</para>

    <para>If you need to modify the build system files, per-platform
    instructions are in
    <filename>README-Visual-Studio.md</filename>,
    <filename>README-MinGW.md</filename>, and
    <filename>README-Mac-OS-X.md</filename>.</para>
  </sect2>


  <sect2 id="max-fields">
    <title>The Maximum Number of Fields Allowed</title>

    <para>libtabula offers two ways to automatically build

Changes to doc/userman/fo2pdf.

17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
		$AHCMD -silent -d $FOFILE -o $PDFFILE
	elif [ -x "$FOPCMD" ]
	then
		echo "Rendering $FOFILE to $PDFFILE with Apache FOP ($FOPCMD)..."
		$FOPCMD -q -fo $FOFILE $PDFFILE
	else
		echo 'Cannot find a working XSL-FO processor on your system!  See'
		echo 'doc/usrman/README.txt for instructions on installing one.'
		echo
		exit 1
	fi
else
	if [ -n "$FOFILE" ]
	then
		echo "XSL-FO file $FOFILE does not exist."







|







17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
		$AHCMD -silent -d $FOFILE -o $PDFFILE
	elif [ -x "$FOPCMD" ]
	then
		echo "Rendering $FOFILE to $PDFFILE with Apache FOP ($FOPCMD)..."
		$FOPCMD -q -fo $FOFILE $PDFFILE
	else
		echo 'Cannot find a working XSL-FO processor on your system!  See'
		echo 'doc/userman/README.md for instructions on installing one.'
		echo
		exit 1
	fi
else
	if [ -n "$FOFILE" ]
	then
		echo "XSL-FO file $FOFILE does not exist."

Changes to doc/userman/incorporating.dbx.

258
259
260
261
262
263
264
265
266
267
268
269
270
271
272

      <para>One thing that may trip you up on OS X is that it uses an
      uncommon dynamic linkage system. The easiest way to cope with
      this is to link your executables with the compiler, rather than
      call <filename>ld</filename> directly.</para>

      <para>Another tricky bit on OS X is the concept of Universal
      binaries. See <filename>README-Mac-OS-X.txt</filename> for
      details on building a Universal version of the libtabula library,
      if you need one. By default, you only get a version tuned for
      the system type you build it on.</para>
    </sect3>

    <sect3 id="inc-osx-xcode">
      <title>Xcode</title>







|







258
259
260
261
262
263
264
265
266
267
268
269
270
271
272

      <para>One thing that may trip you up on OS X is that it uses an
      uncommon dynamic linkage system. The easiest way to cope with
      this is to link your executables with the compiler, rather than
      call <filename>ld</filename> directly.</para>

      <para>Another tricky bit on OS X is the concept of Universal
      binaries. See <filename>README-Mac-OS-X.md</filename> for
      details on building a Universal version of the libtabula library,
      if you need one. By default, you only get a version tuned for
      the system type you build it on.</para>
    </sect3>

    <sect3 id="inc-osx-xcode">
      <title>Xcode</title>

Changes to doc/userman/threads.dbx.

47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
..
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
        <para>On Linux, Cygwin and Unix (OS X, *BSD, Solaris...),
        pass the <computeroutput>--enable-thread-check</computeroutput>
        flag to the <filename>configure</filename> script. Beware, this
        is only a request to the <filename>configure</filename> script
        to look for thread support on your system, not a requirement
        to do or die: if the script doesn&#x2019;t find what it needs
        to do threading, libtabula will just get built without thread
        support. See <filename>README-Unix.txt</filename> for more
        details.</para>

        <para>On Windows, if you use the Visual C++ project files or
        the MinGW Makefile that comes with the libtabula distribution,
        threading is always turned on, due to the nature of
        Windows.</para>

................................................................................
        thread-safe one. (The &#x201C;<filename>_r</filename>&#x201D;
        means reentrant.)</para>

        <para>If you&#x2019;re using the Windows binary distribution
        of MySQL, you should have only one version of the C
        API library, which should be thread-aware. If you have
        two, you probably just have separate debug and optimized
        builds. See <filename>README-Visual-Studio.txt</filename> or
        <filename>README-MinGW.txt</filename> for details.</para>

        <para>If you build MySQL from source, you might only get
        one version of the MySQL C API library, and it can have
        thread awareness or not, depending on your configuration
        choices.</para>
      </listitem>








|







 







|
|







47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
..
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
        <para>On Linux, Cygwin and Unix (OS X, *BSD, Solaris...),
        pass the <computeroutput>--enable-thread-check</computeroutput>
        flag to the <filename>configure</filename> script. Beware, this
        is only a request to the <filename>configure</filename> script
        to look for thread support on your system, not a requirement
        to do or die: if the script doesn&#x2019;t find what it needs
        to do threading, libtabula will just get built without thread
        support. See <filename>README-Unix.md</filename> for more
        details.</para>

        <para>On Windows, if you use the Visual C++ project files or
        the MinGW Makefile that comes with the libtabula distribution,
        threading is always turned on, due to the nature of
        Windows.</para>

................................................................................
        thread-safe one. (The &#x201C;<filename>_r</filename>&#x201D;
        means reentrant.)</para>

        <para>If you&#x2019;re using the Windows binary distribution
        of MySQL, you should have only one version of the C
        API library, which should be thread-aware. If you have
        two, you probably just have separate debug and optimized
        builds. See <filename>README-Visual-Studio.md</filename> or
        <filename>README-MinGW.md</filename> for details.</para>

        <para>If you build MySQL from source, you might only get
        one version of the MySQL C API library, and it can have
        thread awareness or not, depending on your configuration
        choices.</para>
      </listitem>

Changes to doc/userman/tutorial.dbx.

24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
...
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
    source code and a simplified <filename>Makefile</filename>
    are in the <filename>libtabula-devel</filename>
    package. They are typically installed in
    <filename>/usr/share/doc/libtabula-devel-*/examples</filename>,
    but it can vary on different Linuxes.</para>

    <para>Before you get started, please read through any of the
    <filename>README*.txt</filename> files included with the libtabula
    distribution that are relevant to your platform. We won&#x2019;t
    repeat all of that here.</para>

    <para>Most of the examples require a test database, created by
    <filename>resetdb</filename>. You can run it like so:</para>

    <screen>resetdb [-s server_addr] [-u user] [-p password]</screen>
................................................................................
    <para>(Again, leave off the <command>./</command> bit on
    Windows.)</para>

    <para>You may have to re-run <filename>resetdb</filename>
    after running some of the other examples, as they change the
    database.</para>

    <para>See <filename>README-examples.txt</filename> for more
    details on running the examples.</para>
  </sect2>


  <sect2 id="simple">
    <title>A Simple Example</title>








|







 







|







24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
...
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
    source code and a simplified <filename>Makefile</filename>
    are in the <filename>libtabula-devel</filename>
    package. They are typically installed in
    <filename>/usr/share/doc/libtabula-devel-*/examples</filename>,
    but it can vary on different Linuxes.</para>

    <para>Before you get started, please read through any of the
    <filename>README*.md</filename> files included with the libtabula
    distribution that are relevant to your platform. We won&#x2019;t
    repeat all of that here.</para>

    <para>Most of the examples require a test database, created by
    <filename>resetdb</filename>. You can run it like so:</para>

    <screen>resetdb [-s server_addr] [-u user] [-p password]</screen>
................................................................................
    <para>(Again, leave off the <command>./</command> bit on
    Windows.)</para>

    <para>You may have to re-run <filename>resetdb</filename>
    after running some of the other examples, as they change the
    database.</para>

    <para>See <filename>README-examples.md</filename> for more
    details on running the examples.</para>
  </sect2>


  <sect2 id="simple">
    <title>A Simple Example</title>

Changes to examples/cgi_jpeg.cpp.

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 cgi_jpeg.cpp - Example code showing how to fetch JPEG data from a BLOB
 	column and send it back to a browser that requested it by ID.
	
	Use load_jpeg.cpp to load JPEG files into the database we query.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 cgi_jpeg.cpp - Example code showing how to fetch JPEG data from a BLOB
 	column and send it back to a browser that requested it by ID.
	
	Use load_jpeg.cpp to load JPEG files into the database we query.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/cpool.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
...
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
/***********************************************************************
 cpool.cpp - ConnectionPool example.  Works with both Windows native
	threads and POSIX threads.  Shows how to create and use a concrete
	ConnectionPool derivative.

 Copyright © 2008-2010 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.
................................................................................

	// Create the pool and grab a connection.  We do it partly to test
	// that the parameters are good before we start doing real work, and
	// partly because we need a Connection object to call thread_aware()
	// on to check that it's okay to start doing that real work.  This
	// latter check should never fail on Windows, but will fail on most
	// other systems unless you take positive steps to build with thread
	// awareness turned on.  See README-*.txt for your platform.
	poolptr = new SimpleConnectionPool(cmdline);
	try {
		libtabula::ScopedConnection cp(*poolptr, true);
		if (!cp->thread_aware()) {
			cerr << "libtabula wasn't built with thread awareness!  " <<
					argv[0] << " can't run without it." << endl;
			return 1;







|







 







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
...
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
/***********************************************************************
 cpool.cpp - ConnectionPool example.  Works with both Windows native
	threads and POSIX threads.  Shows how to create and use a concrete
	ConnectionPool derivative.

 Copyright © 2008-2010 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.
................................................................................

	// Create the pool and grab a connection.  We do it partly to test
	// that the parameters are good before we start doing real work, and
	// partly because we need a Connection object to call thread_aware()
	// on to check that it's okay to start doing that real work.  This
	// latter check should never fail on Windows, but will fail on most
	// other systems unless you take positive steps to build with thread
	// awareness turned on.  See README-*.md for your platform.
	poolptr = new SimpleConnectionPool(cmdline);
	try {
		libtabula::ScopedConnection cp(*poolptr, true);
		if (!cp->thread_aware()) {
			cerr << "libtabula wasn't built with thread awareness!  " <<
					argv[0] << " can't run without it." << endl;
			return 1;

Changes to examples/dbinfo.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 dbinfo.cpp - Example showing how to request information about the
	database schema, such as table names, column types, etc.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 dbinfo.cpp - Example showing how to request information about the
	database schema, such as table names, column types, etc.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/deadlock.cpp.

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
	with libtabula's Transaction class an exception handling mechanism.
	Run one copy of this program with the -m1 command line switch, then
	while it's waiting for you to press Enter, run another copy with -m2
	instead.

 Copyright © 2007 by Jim Wallace and © 2007-2009 by Educational
 Technology Resources, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.txt file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
	with libtabula's Transaction class an exception handling mechanism.
	Run one copy of this program with the -m1 command line switch, then
	while it's waiting for you to press Enter, run another copy with -m2
	instead.

 Copyright © 2007 by Jim Wallace and © 2007-2009 by Educational
 Technology Resources, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.md file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/fieldinf.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 fieldinf.cpp - Shows how to request information about the fields in a
	table, such as their SQL and C++-equivalent types.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 fieldinf.cpp - Shows how to request information about the fields in a
	table, such as their SQL and C++-equivalent types.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/for_each.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 for_each.cpp - Demonstrates Query::for_each(), showing how to perform
	an arbitrary action on each row in a result set.

 Copyright © 2005-2009 by Educational Technology Resources, Inc. and
 © 2007 by Switchplane, Ltd.  Others may also hold copyrights on
 code in this file.  See the CREDITS.txt file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 for_each.cpp - Demonstrates Query::for_each(), showing how to perform
	an arbitrary action on each row in a result set.

 Copyright © 2005-2009 by Educational Technology Resources, Inc. and
 © 2007 by Switchplane, Ltd.  Others may also hold copyrights on
 code in this file.  See the CREDITS.md file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/images.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 images.h - Declares the images table SSQLS.

 Copyright © 2008-2010 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 images.h - Declares the images table SSQLS.

 Copyright © 2008-2010 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to examples/load_jpeg.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 load_jpeg.cpp - Example showing how to insert BLOB data into the
	database from a file.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 load_jpeg.cpp - Example showing how to insert BLOB data into the
	database from a file.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/multiquery.cpp.

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
	get multiple result sets when executing multiple separate SQL
	statments in a single query, or when dealing with the results of
	calling a stored procedure.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 © 2004-2009 by Educational Technology Resources, Inc., and c
 2005 by Arnon Jalon.  Others may also hold copyrights on code in
 this file.  See the CREDITS.txt file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
	get multiple result sets when executing multiple separate SQL
	statments in a single query, or when dealing with the results of
	calling a stored procedure.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 © 2004-2009 by Educational Technology Resources, Inc., and c
 2005 by Arnon Jalon.  Others may also hold copyrights on code in
 this file.  See the CREDITS.md file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/printdata.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 printdata.cpp - Utility functions for printing out data in common
	formats, required by most of the example programs.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 printdata.cpp - Utility functions for printing out data in common
	formats, required by most of the example programs.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/printdata.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 printdata.h - Declares utility routines for printing out data in
	common forms, used by most of the example programs.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 printdata.h - Declares utility routines for printing out data in
	common forms, used by most of the example programs.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/simple1.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 simple1.cpp - Example showing the simplest way to get data from a libtabula
	table with libtabula.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 simple1.cpp - Example showing the simplest way to get data from a libtabula
	table with libtabula.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/simple2.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 simple2.cpp - Retrieves the entire contents of the sample stock table
	using a "store" query, and prints it out.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 simple2.cpp - Retrieves the entire contents of the sample stock table
	using a "store" query, and prints it out.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/ssqls1.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 ssqls1.cpp - Example that produces the same results as simple1, but it
	uses a Specialized SQL Structure to store the results instead of a
	libtabula Result object.
 
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 ssqls1.cpp - Example that produces the same results as simple1, but it
	uses a Specialized SQL Structure to store the results instead of a
	libtabula Result object.
 
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/ssqls2.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 ssqls2.cpp - Example showing how to insert a row using the Specialized
	SQL Structures feature of libtabula.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 ssqls2.cpp - Example showing how to insert a row using the Specialized
	SQL Structures feature of libtabula.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/ssqls3.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 ssqls3.cpp - Example showing how to update an SQL row using the
	Specialized SQL Structures feature of libtabula.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 ssqls3.cpp - Example showing how to update an SQL row using the
	Specialized SQL Structures feature of libtabula.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/ssqls4.cpp.

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 ssqls4.cpp - Example very similar to ssqls1.cpp, except that it
	stores its result set in an STL set container.  This demonstrates
	how one can manipulate libtabula result sets in a very natural C++
	style.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2010 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 ssqls4.cpp - Example very similar to ssqls1.cpp, except that it
	stores its result set in an STL set container.  This demonstrates
	how one can manipulate libtabula result sets in a very natural C++
	style.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2010 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/ssqls5.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 ssqls5.cpp - Example showing how to use the equal_list() member of
	some SSQLS types to build SELECT queries with custom WHERE clauses.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, c
 2004-2009 by Educational Technology Resources, Inc., and © 2005 by
 Chris Frey.  Others may also hold copyrights on code in this file.
 See the CREDITS.txt file in the top directory of the distribution
 for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 ssqls5.cpp - Example showing how to use the equal_list() member of
	some SSQLS types to build SELECT queries with custom WHERE clauses.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, c
 2004-2009 by Educational Technology Resources, Inc., and © 2005 by
 Chris Frey.  Others may also hold copyrights on code in this file.
 See the CREDITS.md file in the top directory of the distribution
 for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/stock.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 stock.h - Declares the stock SSQLS used by several of the examples.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2010 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 stock.h - Declares the stock SSQLS used by several of the examples.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2010 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/threads.h.

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 threads.h - Abstracts away the differences between POSIX threads and
	Windows native threads.  Used by the cpool example only; we could
	keep this code inline there, but it's really just unimportant
	details.

 Copyright © 2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 threads.h - Abstracts away the differences between POSIX threads and
	Windows native threads.  Used by the cpool example only; we could
	keep this code inline there, but it's really just unimportant
	details.

 Copyright © 2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to examples/tquery1.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 tquery1.cpp - Example similar to ssqls3.cpp, except that it uses
	template queries instead of SSQLS.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 tquery1.cpp - Example similar to ssqls3.cpp, except that it uses
	template queries instead of SSQLS.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/tquery2.cpp.

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
	query parameters in a SQLQueryParms object, instead of separately.
	This is useful when the calling code doesn't know in advance how
	many parameters there will be.  This is most likely because the
	templates are coming from somewhere else, or being generated.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
	query parameters in a SQLQueryParms object, instead of separately.
	This is useful when the calling code doesn't know in advance how
	many parameters there will be.  This is most likely because the
	templates are coming from somewhere else, or being generated.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/tquery3.cpp.

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
	something interesting.  We've historically had a problem with
	tqueries with just one parameter; we cover the quoted case in
	resetdb and the other tquery examples, so we get the unquoted
	one here.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
	something interesting.  We've historically had a problem with
	tqueries with just one parameter; we cover the quoted case in
	resetdb and the other tquery examples, so we get the unquoted
	one here.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/tquery4.cpp.

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 tquery4.cpp - Tests other details about template queries, like unquoted
	parameters, multiple parameters, and preventing problems with LIKE
	patterns.  This exists more for code coverage than to demonstrate
	the library.

 Copyright © 2009 by Martin Gallwey and © 2009 by Educational
 Technology Resources, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.txt file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 tquery4.cpp - Tests other details about template queries, like unquoted
	parameters, multiple parameters, and preventing problems with LIKE
	patterns.  This exists more for code coverage than to demonstrate
	the library.

 Copyright © 2009 by Martin Gallwey and © 2009 by Educational
 Technology Resources, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.md file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/transaction.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 transaction.cpp - Example showing how to use libtabula's transaction
 	features.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 transaction.cpp - Example showing how to use libtabula's transaction
 	features.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/vstudio/mfc/mfc.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 mfc.cpp - Skeletal main module of the libtabula MFC example program.
	Nothing interesting to see here.  Move along to mfc_dlg.cpp, folks.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.txt
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 mfc.cpp - Skeletal main module of the libtabula MFC example program.
	Nothing interesting to see here.  Move along to mfc_dlg.cpp, folks.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.md
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/vstudio/mfc/mfc.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 mfc.cpp - Declares the MFC application object.  Nothing interesting to
	see here.  Move along to mfc_dlg.cpp, folks.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.txt
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 mfc.cpp - Declares the MFC application object.  Nothing interesting to
	see here.  Move along to mfc_dlg.cpp, folks.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.md
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/vstudio/mfc/mfc_dlg.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 mfc_dlg.cpp - Defines the dialog box behavior for the libtabula MFC
	example.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.txt
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 mfc_dlg.cpp - Defines the dialog box behavior for the libtabula MFC
	example.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.md
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/vstudio/mfc/mfc_dlg.h.

1
2
3
4
5
6
7
8
9
10
11
12
/***********************************************************************
 mfc_dlg.h - Declares the dialog class for the libtabula MFC example.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.txt
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or




|







1
2
3
4
5
6
7
8
9
10
11
12
/***********************************************************************
 mfc_dlg.h - Declares the dialog class for the libtabula MFC example.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.md
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/vstudio/mfc/stdafx.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 stdafx.h - Common include file to bring in MFC support and other
	basics.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.txt
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 stdafx.h - Common include file to bring in MFC support and other
	basics.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.md
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to examples/vstudio/wforms/MainForm.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 MainForm.cpp - Defines the dialog box behavior for the libtabula
    C++/CLI Windows Forms example.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.txt
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 MainForm.cpp - Defines the dialog box behavior for the libtabula
    C++/CLI Windows Forms example.

 Copyright © 2007 by Educational Technology Resources, Inc.  Others 
 may also hold copyrights on code in this file.  See the CREDITS.md
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/autoflag.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file autoflag.h
/// \brief Defines a template for setting a flag within a given variable
/// scope, and resetting it when exiting that scope.

/***********************************************************************
 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file autoflag.h
/// \brief Defines a template for setting a flag within a given variable
/// scope, and resetting it when exiting that scope.

/***********************************************************************
 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/beemutex.cpp.

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 beemutex.cpp - Implements the BeecryptMutex class.  The name comes
	from the fact that we lifted this essentially intact from the
	Beecrypt library, which is also LGPL.  See beecrypt.h for the list
	of changes we made on integrating it into libtabula.

 Copyright © 2004 Beeyond Software Holding BV and © 2007 by
 Educational Technology Resources, Inc.  Others may also hold
 copyrights on code in this file.  See the CREDITS.txt file in the
 top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 beemutex.cpp - Implements the BeecryptMutex class.  The name comes
	from the fact that we lifted this essentially intact from the
	Beecrypt library, which is also LGPL.  See beecrypt.h for the list
	of changes we made on integrating it into libtabula.

 Copyright © 2004 Beeyond Software Holding BV and © 2007 by
 Educational Technology Resources, Inc.  Others may also hold
 copyrights on code in this file.  See the CREDITS.md file in the
 top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/beemutex.h.

15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/// - made private mutex member a void* so we don't have to define the
///   full type in the .h file, due to previous item
/// - added more Doxygen comments, and changed some existing comments

/***********************************************************************
 Copyright © 2004 Beeyond Software Holding BV and © 2007-2008
 by Educational Technology Resources, Inc.  Others may also hold
 copyrights on code in this file.  See the CREDITS.txt file in the
 top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/// - made private mutex member a void* so we don't have to define the
///   full type in the .h file, due to previous item
/// - added more Doxygen comments, and changed some existing comments

/***********************************************************************
 Copyright © 2004 Beeyond Software Holding BV and © 2007-2008
 by Educational Technology Resources, Inc.  Others may also hold
 copyrights on code in this file.  See the CREDITS.md file in the
 top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/cmdline.cpp.

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    utility programs.  Not intended for end-user use!

 Copyright © 2007-2009 by Educational Technology Resources,
 Inc.  getopt() and its associated globals are the public domain
 implementation made available at the 1985 UNIFORUM conference in
 Dallas, Texas; the code is untouched except for style tweaks.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    utility programs.  Not intended for end-user use!

 Copyright © 2007-2009 by Educational Technology Resources,
 Inc.  getopt() and its associated globals are the public domain
 implementation made available at the 1985 UNIFORUM conference in
 Dallas, Texas; the code is untouched except for style tweaks.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/cmdline.h.

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 cmdline.h - Declares the interface to the libtabula's command line
	parsing logic, used by the examples and the utility programs.
	Not intended for use by third parties!	If it breaks, you
	get to keep all the pieces.

 Copyright © 2007-2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 cmdline.h - Declares the interface to the libtabula's command line
	parsing logic, used by the examples and the utility programs.
	Not intended for use by third parties!	If it breaks, you
	get to keep all the pieces.

 Copyright © 2007-2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/common.h.

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
///
/// This file mostly takes care of platform differences.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 © 2004-2009 by Educational Technology Resources, Inc., and
 © 2009 by Warren Young.  Others may also hold copyrights on code
 in this file.  See the CREDITS.txt file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
///
/// This file mostly takes care of platform differences.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 © 2004-2009 by Educational Technology Resources, Inc., and
 © 2009 by Warren Young.  Others may also hold copyrights on code
 in this file.  See the CREDITS.md file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/comparable.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file comparable.h
/// \brief Declares the Comparable<T> mixin

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file comparable.h
/// \brief Declares the Comparable<T> mixin

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/connection.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 connection.cpp - Implements the Connection class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008, 2014 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 connection.cpp - Implements the Connection class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008, 2014 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/connection.h.

7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/// Subordinate classes, such as Query and Row take their defaults as
/// to whether exceptions are thrown when errors are encountered from
/// the Connection object that created them, directly or indirectly.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/// Subordinate classes, such as Query and Row take their defaults as
/// to whether exceptions are thrown when errors are encountered from
/// the Connection object that created them, directly or indirectly.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/cpool.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 cpool.cpp - Implements the ConnectionPool class.

 Copyright © 2007-2009 by Educational Technology Resources, Inc. and
 © 2007 by Jonathan Wakely.  Others may also hold copyrights on
 code in this file.  See the CREDITS.txt file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 cpool.cpp - Implements the ConnectionPool class.

 Copyright © 2007-2009 by Educational Technology Resources, Inc. and
 © 2007 by Jonathan Wakely.  Others may also hold copyrights on
 code in this file.  See the CREDITS.md file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/cpool.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file cpool.h
/// \brief Declares the ConnectionPool class.

/***********************************************************************
 Copyright © 2007-2008 by Educational Technology Resources, Inc. and
 © 2007 by Jonathan Wakely.  Others may also hold copyrights on
 code in this file.  See the CREDITS.txt file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file cpool.h
/// \brief Declares the ConnectionPool class.

/***********************************************************************
 Copyright © 2007-2008 by Educational Technology Resources, Inc. and
 © 2007 by Jonathan Wakely.  Others may also hold copyrights on
 code in this file.  See the CREDITS.md file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/datetime.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 datetime.cpp - Implements date and time classes compatible with MySQL's
	various date and time column types.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 datetime.cpp - Implements date and time classes compatible with MySQL's
	various date and time column types.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/datetime.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file datetime.h
/// \brief Declares classes to add SQL-compatible date and time
/// types to C++'s type system.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file datetime.h
/// \brief Declares classes to add SQL-compatible date and time
/// types to C++'s type system.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/dbdriver.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 dbdriver.cpp - Implements the DBDriver class.

 Copyright © 2005-2009, 2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 dbdriver.cpp - Implements the DBDriver class.

 Copyright © 2005-2009, 2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/dbdriver.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file dbdriver.h
/// \brief Declares the DBDriver class.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009, 2014 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file dbdriver.h
/// \brief Declares the DBDriver class.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009, 2014 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/exceptions.h.

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
///
/// When exceptions are enabled for a given libtabula::OptionalExceptions
/// derivative, any of these exceptions can be thrown on error.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2010 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
///
/// When exceptions are enabled for a given libtabula::OptionalExceptions
/// derivative, any of these exceptions can be thrown on error.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2010 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/field.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file field.h
/// \brief Declares the Field and Fields classes.

/***********************************************************************
 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file field.h
/// \brief Declares the Field and Fields classes.

/***********************************************************************
 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/field_names.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 field_names.cpp - Implements the FieldNames class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2010 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 field_names.cpp - Implements the FieldNames class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2010 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/field_names.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file field_names.h
/// \brief Declares a class to hold a list of field names.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file field_names.h
/// \brief Declares a class to hold a list of field names.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/field_type.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 field_type.cpp - Implements the FieldType class, as well as some
 	internal helper classes.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2007, 2014-2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 field_type.cpp - Implements the FieldType class, as well as some
 	internal helper classes.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2007, 2014-2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/field_type.h.

9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/// the translation to/from the appropriate FieldType should be
/// transparent.  If not, consider it a bug, and report it.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2008, 2014-2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/// the translation to/from the appropriate FieldType should be
/// transparent.  If not, consider it a bug, and report it.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2008, 2014-2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/field_types.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 field_types.cpp - Implements the FieldTypes class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 field_types.cpp - Implements the FieldTypes class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/libtabula.h.in.

8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/// because the libtabula headers are so intertwined.  You can only get
/// trivial compile time benefits, at the expense of clarity.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2010, 2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/// because the libtabula headers are so intertwined.  You can only get
/// trivial compile time benefits, at the expense of clarity.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2010, 2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/manip.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 manip.cpp - Implements libtabula's various quoting/escaping stream
	manipulators.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 manip.cpp - Implements libtabula's various quoting/escaping stream
	manipulators.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/manip.h.

13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/// correct SQL, not with presentation matters.
///
/// test/test_manip.cpp exercises the mechanisms defined here.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/// correct SQL, not with presentation matters.
///
/// test/test_manip.cpp exercises the mechanisms defined here.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/myset.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file myset.h
/// \brief Declares templates for generating custom containers used
/// elsewhere in the library.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file myset.h
/// \brief Declares templates for generating custom containers used
/// elsewhere in the library.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/mysql/driver.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 mysql/driver.cpp - Implements the MySQLDriver class, child of DBDriver.

 Copyright © 2005-2009, 2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 mysql/driver.cpp - Implements the MySQLDriver class, child of DBDriver.

 Copyright © 2005-2009, 2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/mysql/driver.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file mysql/driver.h
/// \brief Declares the MySQLDriver class.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009, 2014 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file mysql/driver.h
/// \brief Declares the MySQLDriver class.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009, 2014 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/mysql/ft.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 mysql/ft.cpp - Implements the MySQLFieldType class, as well as some
 	internal helper classes.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2007, 2014-2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 mysql/ft.cpp - Implements the MySQLFieldType class, as well as some
 	internal helper classes.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2007, 2014-2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/mysql/ft.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file mysql/ft.h
/// \brief Implements the abstract FieldType interface for MySQL.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2008, 2014-2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file mysql/ft.h
/// \brief Implements the abstract FieldType interface for MySQL.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2008, 2014-2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/mystring.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 mystring.cpp - Implements the String class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008, 2014 by Educational Technology Resources, Inc.  Others
 may also hold copyrights on code in this file.  See the CREDITS.txt
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 mystring.cpp - Implements the String class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008, 2014 by Educational Technology Resources, Inc.  Others
 may also hold copyrights on code in this file.  See the CREDITS.md
 file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/mystring.h.

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/// \brief Declares String class, libtabula's generic std::string-like
/// class, used for holding data received from the database server.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2008, 2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/// \brief Declares String class, libtabula's generic std::string-like
/// class, used for holding data received from the database server.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2008, 2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/noexceptions.h.

11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/// the NoExceptions object within a scope to suppress exceptions in
/// that block, without having to worry about reverting the setting when
/// the block exits.

/***********************************************************************
 Copyright © 2005-2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/// the NoExceptions object within a scope to suppress exceptions in
/// that block, without having to worry about reverting the setting when
/// the block exits.

/***********************************************************************
 Copyright © 2005-2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/null.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 null.cpp - Defines a few things declared in null.h

 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 null.cpp - Defines a few things declared in null.h

 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/null.h.

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
///
/// This is required because C++'s own NULL type is not semantically
/// the same as SQL nulls.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
///
/// This is required because C++'s own NULL type is not semantically
/// the same as SQL nulls.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/qparms.h.

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/// The classes defined in this file are used by class Query when it
/// parses a template query: they hold information that it finds in the
/// template, so it can assemble a SQL statement later on demand.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/// The classes defined in this file are used by class Query when it
/// parses a template query: they hold information that it finds in the
/// template, so it can assemble a SQL statement later on demand.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/query.cpp.

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

 Copyright © 1998 by Kevin Atkinson,
 © 1999-2001 by MySQL AB,
 © 2004-2009, 2014 by Educational Technology Resources, Inc., and
 © 2015 by Warren Young.
 
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

 Copyright © 1998 by Kevin Atkinson,
 © 1999-2001 by MySQL AB,
 © 2004-2009, 2014 by Educational Technology Resources, Inc., and
 © 2015 by Warren Young.
 
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/query.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file query.h
/// \brief Defines a class for building and executing SQL queries.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2011, 2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file query.h
/// \brief Defines a class for building and executing SQL queries.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2011, 2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/refcounted.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file refcounted.h
/// \brief Declares the RefCountedPointer template

/***********************************************************************
 Copyright © 2007-2011 by Educational Technology Resources, Inc. and
 © 2007 by Jonathan Wakely.  Others may also hold copyrights on
 code in this file.  See the CREDITS.txt file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file refcounted.h
/// \brief Declares the RefCountedPointer template

/***********************************************************************
 Copyright © 2007-2011 by Educational Technology Resources, Inc. and
 © 2007 by Jonathan Wakely.  Others may also hold copyrights on
 code in this file.  See the CREDITS.md file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/result.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 result.cpp - Implements the ResultBase, StoreQueryResult and
	UseQuery Result classes.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2007, 2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 result.cpp - Implements the ResultBase, StoreQueryResult and
	UseQuery Result classes.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB,
 and © 2004-2007, 2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/result.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file result.h
/// \brief Declares classes for holding information about SQL query
/// results.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file result.h
/// \brief Declares classes for holding information about SQL query
/// results.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/row.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 row.cpp - Implements the Row class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 row.cpp - Implements the Row class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/row.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file row.h
/// \brief Declares the classes for holding row data from a result set.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file row.h
/// \brief Declares the classes for holding row data from a result set.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2008 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/scopedconnection.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
/***********************************************************************
 scopedconnection.cpp - Implements the ScopedConnection class.

 Copyright © 2010 by Switchplane, Ltd.  Others may also hold
 copyrights on code in this file.  See the CREDITS.txt file in the
 top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or




|







1
2
3
4
5
6
7
8
9
10
11
12
/***********************************************************************
 scopedconnection.cpp - Implements the ScopedConnection class.

 Copyright © 2010 by Switchplane, Ltd.  Others may also hold
 copyrights on code in this file.  See the CREDITS.md file in the
 top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/scopedconnection.h.

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/// This class lets you grab a connection from a ConnectionPool in a
/// scoped and therefore RAII way.  The Connection object will always be
/// returned to the pool when the scope block ends, plugging a potential
/// leak in the pool.

/***********************************************************************
 Copyright © 2010 by Joel Fielder.  Others may also hold copyrights
 on code in this file.  See the CREDITS.txt file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/// This class lets you grab a connection from a ConnectionPool in a
/// scoped and therefore RAII way.  The Connection object will always be
/// returned to the pool when the scope block ends, plugging a potential
/// leak in the pool.

/***********************************************************************
 Copyright © 2010 by Joel Fielder.  Others may also hold copyrights
 on code in this file.  See the CREDITS.md file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/sql_buffer.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 sql_buffer.cpp - Implements the SQLBuffer class.

 Copyright © 2007-2008, 2014 by Educational Technology Resources,
 Inc.  Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 sql_buffer.cpp - Implements the SQLBuffer class.

 Copyright © 2007-2008, 2014 by Educational Technology Resources,
 Inc.  Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/sql_buffer.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file sql_buffer.h
/// \brief Declares the SQLBuffer class

/***********************************************************************
 Copyright © 2007-2008 by Educational Technology Resources, Inc. and
 © 2007 by Jonathan Wakely.  Others may also hold copyrights on
 code in this file.  See the CREDITS.txt file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file sql_buffer.h
/// \brief Declares the SQLBuffer class

/***********************************************************************
 Copyright © 2007-2008 by Educational Technology Resources, Inc. and
 © 2007 by Jonathan Wakely.  Others may also hold copyrights on
 code in this file.  See the CREDITS.md file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/sql_types.h.

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/// The typedefs defined here are only for the "non-NULL" variants.
/// To get nullable versions, wrap the appropriate type in the
/// \c Null<T> template.  See null.h for more information.

/***********************************************************************
 Copyright © 2006-2009, 2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/// The typedefs defined here are only for the "non-NULL" variants.
/// To get nullable versions, wrap the appropriate type in the
/// \c Null<T> template.  See null.h for more information.

/***********************************************************************
 Copyright © 2006-2009, 2015 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/ssqls.pl.

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

########################################################################
# ssqls.pl - Generates ssqls.h, as it defines many near-duplicate
#	functions and classes, varying only in trivial ways.
#
# Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
# © 2004-2010 by Educational Technology Resources, Inc.  Others may
# also hold copyrights on code in this file.  See the CREDITS.txt file
# in the top directory of the distribution for details.
#
# This file is part of libtabula.
#
# libtabula 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 2.1 of the License, or







|







2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

########################################################################
# ssqls.pl - Generates ssqls.h, as it defines many near-duplicate
#	functions and classes, varying only in trivial ways.
#
# Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
# © 2004-2010 by Educational Technology Resources, Inc.  Others may
# also hold copyrights on code in this file.  See the CREDITS.md file
# in the top directory of the distribution for details.
#
# This file is part of libtabula.
#
# libtabula 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 2.1 of the License, or

Changes to src/ssqls2.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 ssqls2.cpp - Implements the SsqlsBase class.

 Copyright © 2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 ssqls2.cpp - Implements the SsqlsBase class.

 Copyright © 2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/ssqls2.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file ssqls2.h
/// \brief Declares the SsqlsBase class

/***********************************************************************
 Copyright © 2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file ssqls2.h
/// \brief Declares the SsqlsBase class

/***********************************************************************
 Copyright © 2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/ssx/genv2.cpp.

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 	the equivalent SSQLS v2 DSL code.  This is useful for testing that
	our parser has correctly understood a given piece of code.  It is
	also something like the preprocessor mode of a C++ compiler,
	emitting a digested version of its input.

 Copyright © 2009 by Warren Young and © 2009-2010 by Educational
 Technology Resources, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.txt file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 	the equivalent SSQLS v2 DSL code.  This is useful for testing that
	our parser has correctly understood a given piece of code.  It is
	also something like the preprocessor mode of a C++ compiler,
	emitting a digested version of its input.

 Copyright © 2009 by Warren Young and © 2009-2010 by Educational
 Technology Resources, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.md file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/ssx/genv2.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 ssx/genv2.h - Mechanism for generating SSQLS v2 DSL code from
 	an SSQLS v2 parse result.  Implements ssqlsxlat -o flag.

 Copyright © 2009 by Warren Young.  Others may also hold copyrights
 on code in this file.  See the CREDITS.txt file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 ssx/genv2.h - Mechanism for generating SSQLS v2 DSL code from
 	an SSQLS v2 parse result.  Implements ssqlsxlat -o flag.

 Copyright © 2009 by Warren Young.  Others may also hold copyrights
 on code in this file.  See the CREDITS.md file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/ssx/main.cpp.

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 ssx/main.cpp - Main driver module for ssqlsxlat, which does several
 	data translations related to the SSQLSv2 mechanism of libtabula.  The
	primary one is SSQLSv2 language files (*.ssqls) to C++ source code,
	but there are others.  Run "ssqlsxlat -?" to get a complete list.

 Copyright © 2009 by Warren Young and © 2009-2010 by Educational
 Technology Resources, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.txt file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 ssx/main.cpp - Main driver module for ssqlsxlat, which does several
 	data translations related to the SSQLSv2 mechanism of libtabula.  The
	primary one is SSQLSv2 language files (*.ssqls) to C++ source code,
	but there are others.  Run "ssqlsxlat -?" to get a complete list.

 Copyright © 2009 by Warren Young and © 2009-2010 by Educational
 Technology Resources, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.md file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/ssx/parsev2.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
/***********************************************************************
 ssx/parsev2.cpp - Parser for the SSQLS v2 language.

 Copyright © 2009 by Warren Young.  Others may also hold copyrights
 on code in this file.  See the CREDITS.txt file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or




|







1
2
3
4
5
6
7
8
9
10
11
12
/***********************************************************************
 ssx/parsev2.cpp - Parser for the SSQLS v2 language.

 Copyright © 2009 by Warren Young.  Others may also hold copyrights
 on code in this file.  See the CREDITS.md file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/ssx/parsev2.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 ssx/parsev2.h - Declares the SSQLS v2 language parsing related classes.

 Copyright © 2009 by Warren Young and © 2009-2010 by Educational
 Technology Resources, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.txt file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 ssx/parsev2.h - Declares the SSQLS v2 language parsing related classes.

 Copyright © 2009 by Warren Young and © 2009-2010 by Educational
 Technology Resources, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.md file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/stadapter.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 stadapter.cpp - Implements the SQLTypeAdapter class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 stadapter.cpp - Implements the SQLTypeAdapter class.

 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/stadapter.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file stadapter.h
/// \brief Declares the SQLTypeAdapter class

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file stadapter.h
/// \brief Declares the SQLTypeAdapter class

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2009 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/stream2string.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file stream2string.h
/// \brief Declares an adapter that converts something that can be
/// inserted into a C++ stream into a std::string type.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/// \file stream2string.h
/// \brief Declares an adapter that converts something that can be
/// inserted into a C++ stream into a std::string type.

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/tcp_connection.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 tcp_connection.cpp - Implements the TCPConnection class.

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 tcp_connection.cpp - Implements the TCPConnection class.

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/tcp_connection.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file tcp_connection.h
/// \brief Declares the TCPConnection class.

/***********************************************************************
 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file tcp_connection.h
/// \brief Declares the TCPConnection class.

/***********************************************************************
 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/tiny_int.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file tiny_int.h
/// \brief Declares class for holding a SQL TINYINT

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.txt file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file tiny_int.h
/// \brief Declares class for holding a SQL TINYINT

/***********************************************************************
 Copyright © 1998 by Kevin Atkinson, © 1999-2001 by MySQL AB, and
 © 2004-2007 by Educational Technology Resources, Inc.  Others may
 also hold copyrights on code in this file.  See the CREDITS.md file
 in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/transaction.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 transaction.cpp - Implements the Transaction class.

 Copyright © 2006-2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 transaction.cpp - Implements the Transaction class.

 Copyright © 2006-2014 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/transaction.h.

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/// This object works with the Connection class to automate the use of
/// MySQL transactions.  It allows you to express these transactions
/// directly in C++ code instead of sending the raw SQL commands.

/***********************************************************************
 Copyright © 2006-2009 by Educational Technology Resources, Inc. and
 © 2008 by AboveNet, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.txt file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/// This object works with the Connection class to automate the use of
/// MySQL transactions.  It allows you to express these transactions
/// directly in C++ code instead of sending the raw SQL commands.

/***********************************************************************
 Copyright © 2006-2009 by Educational Technology Resources, Inc. and
 © 2008 by AboveNet, Inc.  Others may also hold copyrights on code
 in this file.  See the CREDITS.md file in the top directory of the
 distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/uds_connection.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 uds_connection.cpp - Implements the UnixDomainSocketConnection class.

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 uds_connection.cpp - Implements the UnixDomainSocketConnection class.

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/uds_connection.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file uds_connection.h
/// \brief Declares the UnixDomainSocketConnection class.

/***********************************************************************
 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file uds_connection.h
/// \brief Declares the UnixDomainSocketConnection class.

/***********************************************************************
 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/utility.h.

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
///
/// None of this is meant to be used outside the library itself.  None
/// of this is considered part of the library interface.  It is subject
/// to change at any time, with no notice.

/***********************************************************************
 Copyright © 2009 by Warren Young.  Others may also hold copyrights
 on code in this file.  See the CREDITS.txt file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or







|







3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
///
/// None of this is meant to be used outside the library itself.  None
/// of this is considered part of the library interface.  It is subject
/// to change at any time, with no notice.

/***********************************************************************
 Copyright © 2009 by Warren Young.  Others may also hold copyrights
 on code in this file.  See the CREDITS.md file in the top directory
 of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or

Changes to src/wnp_connection.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 wnp_connection.cpp - Implements the WindowsNamedPipeConnection class.

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 wnp_connection.cpp - Implements the WindowsNamedPipeConnection class.

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to src/wnp_connection.h.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file wnp_connection.h
/// \brief Declares the WindowsNamedPipeConnection class.

/***********************************************************************
 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// \file wnp_connection.h
/// \brief Declares the WindowsNamedPipeConnection class.

/***********************************************************************
 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula.

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/array_index.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/array_index.cpp - Tests operator[] and at() on indexable objects
	to ensure they throw exceptions when given bad indices.

 Copyright © 2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/array_index.cpp - Tests operator[] and at() on indexable objects
	to ensure they throw exceptions when given bad indices.

 Copyright © 2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/cpool.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 test/cpool.cpp - Tests the ConnectionPool class.

 Copyright © 2007-2008 by Educational Technology Resources, Inc. and
 © 2007 by Jonathan Wakely.  Others may also hold copyrights on
 code in this file.  See the CREDITS.txt file in the top directory of
 the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 test/cpool.cpp - Tests the ConnectionPool class.

 Copyright © 2007-2008 by Educational Technology Resources, Inc. and
 © 2007 by Jonathan Wakely.  Others may also hold copyrights on
 code in this file.  See the CREDITS.md file in the top directory of
 the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or

Changes to test/datetime.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 test/datetime.cpp - Tests the Date, DateTime, and Time classes.

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 test/datetime.cpp - Tests the Date, DateTime, and Time classes.

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/insertpolicy.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/insertpolicy.cpp - Checks that the *InsertPolicy objects work
 	as expected.

 Copyright © 2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/insertpolicy.cpp - Checks that the *InsertPolicy objects work
 	as expected.

 Copyright © 2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/inttypes.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 test/inttypes.cpp - Tests whether the integer typedef equivalents for
	SQL types in lib/sql_types.h are correct on this system.  If not,
	you need to change either that file, lib/common.h, or both.

 Copyright © 2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 test/inttypes.cpp - Tests whether the integer typedef equivalents for
	SQL types in lib/sql_types.h are correct on this system.  If not,
	you need to change either that file, lib/common.h, or both.

 Copyright © 2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/manip.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 test/manip.cpp - Tests the quoting and escaping manipulators.

 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 test/manip.cpp - Tests the quoting and escaping manipulators.

 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/null_comparison.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/null_comparison.cpp - Tests that Null<T> and null_type comparison
	operators and SSQLS comparison functions work correctly.

 Copyright © 2008-2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/null_comparison.cpp - Tests that Null<T> and null_type comparison
	operators and SSQLS comparison functions work correctly.

 Copyright © 2008-2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/null_uniqueness.cpp.

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
	converted to anything else.  Because it triggers a compile-time
	check, it can't be included in the test suite.  You have to just
	try building it.  Comment out the assignment to int to check that
	the return statement also triggers the compile-time check.

 Copyright © 2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
	converted to anything else.  Because it triggers a compile-time
	check, it can't be included in the test suite.  You have to just
	try building it.  Comment out the assignment to int to check that
	the return statement also triggers the compile-time check.

 Copyright © 2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/qssqls.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 test/qssqls.cpp - Tests SQL query creation from SSQLS in Query.

 Copyright © 2008-2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 test/qssqls.cpp - Tests SQL query creation from SSQLS in Query.

 Copyright © 2008-2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/qstream.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 test/qstream.cpp - Tests insertion of all officially-supported data
	types into a Query stream, plus some that aren't official.  Failure
	is defined as an exception being thrown for any one of these.

 Copyright © 2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/***********************************************************************
 test/qstream.cpp - Tests insertion of all officially-supported data
	types into a Query stream, plus some that aren't official.  Failure
	is defined as an exception being thrown for any one of these.

 Copyright © 2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/query_copy.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/query_copy.cpp - Tests SQL query copies, to ensure that we copy
 	it deeply enough.

 Copyright © 2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/query_copy.cpp - Tests SQL query copies, to ensure that we copy
 	it deeply enough.

 Copyright © 2009 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/ssqls2.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
/***********************************************************************
 test/ssqls2.cpp - Tests the SSQLS v2 mechanism

 Copyright © 2009 by Warren Young.  Others may also hold copyrights
 on code in this file.  See the CREDITS.txt file in the top directory
 of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or




|







1
2
3
4
5
6
7
8
9
10
11
12
/***********************************************************************
 test/ssqls2.cpp - Tests the SSQLS v2 mechanism

 Copyright © 2009 by Warren Young.  Others may also hold copyrights
 on code in this file.  See the CREDITS.md file in the top directory
 of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or

Changes to test/string.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/string.cpp - Tests the behavior of libtabula::String, particularly
	its data conversion methods.

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/string.cpp - Tests the behavior of libtabula::String, particularly
	its data conversion methods.

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/tcp.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 test/tcp.cpp - Tests the address parser/verifier in TCPConnection.

 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
/***********************************************************************
 test/tcp.cpp - Tests the address parser/verifier in TCPConnection.

 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/uds.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/uds.cpp - Tests the Unix domain socket verifier in
	UnixDomainSocketConnection.  This test always succeeds on Windows!

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/uds.cpp - Tests the Unix domain socket verifier in
	UnixDomainSocketConnection.  This test always succeeds on Windows!

 Copyright © 2007-2008 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.

Changes to test/wnp.cpp.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/wnp.cpp - Tests WindowsNamedPipeConnection::is_wnp().  This test
	can only fail on Windows!  It succeeds when built for anything else.

 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.txt file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
/***********************************************************************
 test/wnp.cpp - Tests WindowsNamedPipeConnection::is_wnp().  This test
	can only fail on Windows!  It succeeds when built for anything else.

 Copyright © 2007 by Educational Technology Resources, Inc.
 Others may also hold copyrights on code in this file.  See the
 CREDITS.md file in the top directory of the distribution for details.

 This file is part of libtabula

 libtabula 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 2.1 of the License, or
 (at your option) any later version.