Author: wyoung
Date: Fri Dec 21 06:28:55 2007
New Revision: 2007
URL: http://svn.gna.org/viewcvs/mysqlpp?rev=2007&view=rev
Log:
- Replaced "typedef MYSQL_FIELD Field" with a real C++ Field class.
Uses C++ and MySQL++ data types where appropriate, hides everything
behind const accessor functions, and breaks the MYSQL_FIELD.flags
member out into a bunch of functions that return bool instead of
making you use C API constants with & to break them out. Doesn't
mirror 100% of stuff in the C API version: in addition to what dtest
needs, including the most useful-looking stuff. We can add more
later, as needs are clarified.
- Replaced Fields class, which was basically a glorified std::vector,
with "typedef std::vector<Field> Fields". Wasn't possible before
because with Field being a C API type, we had to access it through the
C API, which was all this class was doing.
- Now that Fields is a one-time-init data structure and not something we
access piecewise via the C API, replaced the ResUse::field_seek() and
ResUse::fetch_field() mechanisms from C API wrappers into a trivial
interface to the ResUse object's Fields vector.
- Removed mysql_type_info's length and max_length data members and
accessors. They just held values pulled from MYSQL_FIELD, due to the
way we used to access things before. Now that Field holds them in a
C++-friendly way, these aren't necessary any more. Side bennie:
anything using RefCountedBuffer now also has two fewer pointless data
members, via its mysql_type_info member. mysql_type_info is now
basically a wrapper around a C API type enum value.
- Small tweaks to a few other things as a result of all the above.
Mostly things like calling Field data accessors instead of accessing
values through mysql_type_info or directly in MYSQL_FIELD.
Added:
trunk/lib/field.h
Removed:
trunk/lib/fields.cpp
trunk/lib/fields.h
Modified:
trunk/Wishlist
trunk/examples/multiquery.cpp
trunk/lib/common.h
trunk/lib/field_names.cpp
trunk/lib/field_types.cpp
trunk/lib/result.cpp
trunk/lib/result.h
trunk/lib/type_info.h
trunk/mysql++.bkl
[This mail would be too long, it was shortened to contain the URLs only.]
Modified: trunk/Wishlist
URL:
http://svn.gna.org/viewcvs/mysqlpp/trunk/Wishlist?rev=2007&r1=2006&r2=2007&view=diff
Modified: trunk/examples/multiquery.cpp
URL:
http://svn.gna.org/viewcvs/mysqlpp/trunk/examples/multiquery.cpp?rev=2007&r1=2006&r2=2007&view=diff
Modified: trunk/lib/common.h
URL:
http://svn.gna.org/viewcvs/mysqlpp/trunk/lib/common.h?rev=2007&r1=2006&r2=2007&view=diff
Added: trunk/lib/field.h
URL: http://svn.gna.org/viewcvs/mysqlpp/trunk/lib/field.h?rev=2007&view=auto
Modified: trunk/lib/field_names.cpp
URL:
http://svn.gna.org/viewcvs/mysqlpp/trunk/lib/field_names.cpp?rev=2007&r1=2006&r2=2007&view=diff
Modified: trunk/lib/field_types.cpp
URL:
http://svn.gna.org/viewcvs/mysqlpp/trunk/lib/field_types.cpp?rev=2007&r1=2006&r2=2007&view=diff
Removed: trunk/lib/fields.cpp
URL: http://svn.gna.org/viewcvs/mysqlpp/trunk/lib/fields.cpp?rev=2006&view=auto
Removed: trunk/lib/fields.h
URL: http://svn.gna.org/viewcvs/mysqlpp/trunk/lib/fields.h?rev=2006&view=auto
Modified: trunk/lib/result.cpp
URL:
http://svn.gna.org/viewcvs/mysqlpp/trunk/lib/result.cpp?rev=2007&r1=2006&r2=2007&view=diff
Modified: trunk/lib/result.h
URL:
http://svn.gna.org/viewcvs/mysqlpp/trunk/lib/result.h?rev=2007&r1=2006&r2=2007&view=diff
Modified: trunk/lib/type_info.h
URL:
http://svn.gna.org/viewcvs/mysqlpp/trunk/lib/type_info.h?rev=2007&r1=2006&r2=2007&view=diff
Modified: trunk/mysql++.bkl
URL:
http://svn.gna.org/viewcvs/mysqlpp/trunk/mysql%2B%2B.bkl?rev=2007&r1=2006&r2=2007&view=diff
_______________________________________________
Mysqlpp-commits mailing list
[email protected]
https://mail.gna.org/listinfo/mysqlpp-commits