Go to file
João Abecasis bce08ba220 Introducing QArrayData
Modeled on QByteArrayData/QStringData/QVectorData, the intent is to
unify book-keeping structs for array-like data and enable sharing of
code among them.

As in those structures, size (and alloc) data member(s) specify the
number of *typed* elements the array does (and can) hold.  The size or
alignment requirements of those objects is not tracked in this data
structure and needs to be maintained by its users.

Contrary to QByteArrayData and QStringData, QArrayData's offset member
keeps a *byte* offset to the actual data array and is computed from the
beginning of the struct.

Shared-null and -empty functionality is provided by QArrayData and
shared among all users.

Planned features include setSharable (force deep copies), fromRawData
(detached header and data allocations) and literals a la QStringLiteral
(static immutable instances), thus covering the functionality needed for
QByteArray, QString and QVector.

Change-Id: I9aa709dbb675442e6d06965efb8138ab84602bbd
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2011-12-06 16:57:17 +01:00
bin syncqt: Create deprecated headers that work with MSVC 2011-12-02 08:11:07 +01:00
config.tests Added '-' parameter to fix strings command using gcc-llvm on Mac OS 10.6 w/ Xcode 4.2. 2011-11-08 01:13:40 +01:00
dist Update changelog - Accessibility 2011-11-23 16:30:26 +01:00
doc/src Fix typos in Sqlite docs. 2011-12-05 10:48:37 +01:00
examples Added rotation animation to paintedwindow example. 2011-12-01 10:51:10 +01:00
lib Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
mkspecs Use plural form for CMake variables. 2011-12-06 11:57:11 +01:00
qmake qmake: Don't assume that GNUmake is able to resolve arbitrary dependencies 2011-11-28 15:08:01 +01:00
src Introducing QArrayData 2011-12-06 16:57:17 +01:00
tests Introducing QArrayData 2011-12-06 16:57:17 +01:00
tools configure.exe: Build tests by default. 2011-11-29 12:27:16 +01:00
util Compile. 2011-12-01 20:52:08 +01:00
.gitattributes Added .tag file with Git revision. 2011-05-03 16:23:49 +02:00
.gitignore Add V8 snapshot support 2011-11-22 13:10:56 +01:00
.gitmodules Add QtV8 library to QtBase 2011-08-29 10:16:01 +02:00
.tag Added .tag file with Git revision. 2011-05-03 16:23:49 +02:00
configure v8: Be able to build V8 for MIPS 2011-12-01 17:46:57 +01:00
configure.exe Rebuild configure.exe. 2011-12-01 19:18:34 +01:00
header.BSD Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
header.FDL Update licenseheader text in source files for qtbase Qt module 2011-05-24 12:34:08 +03:00
header.LGPL Update licenseheader text in source files for qtbase Qt module 2011-05-24 12:34:08 +03:00
header.LGPL-ONLY Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
INSTALL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LGPL_EXCEPTION.txt Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.LGPL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.PREVIEW.COMMERCIAL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
qtbase.pro Ensure qmodule.pri is installed. 2011-11-23 00:12:03 +01:00
sync.profile Fix source incompatibility for QVariant{Map, Hash, List} 2011-11-14 18:41:17 +01:00