summaryrefslogtreecommitdiff
path: root/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.cpp
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
commit1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch)
tree46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WebCore/Modules/webdatabase/SQLResultSetRowList.cpp
parent32761a6cee1d0dee366b885b7b9c777e67885688 (diff)
downloadWebKitGtk-tarball-master.tar.gz
Diffstat (limited to 'Source/WebCore/Modules/webdatabase/SQLResultSetRowList.cpp')
-rw-r--r--Source/WebCore/Modules/webdatabase/SQLResultSetRowList.cpp21
1 files changed, 17 insertions, 4 deletions
diff --git a/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.cpp b/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.cpp
index c99b40a56..28dc3b36d 100644
--- a/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.cpp
+++ b/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.cpp
@@ -10,7 +10,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
+ * 3. Neither the name of Apple Inc. ("Apple") nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
@@ -29,13 +29,13 @@
#include "config.h"
#include "SQLResultSetRowList.h"
-#if ENABLE(SQL_DATABASE)
+#include "ExceptionCode.h"
namespace WebCore {
unsigned SQLResultSetRowList::length() const
{
- if (m_result.size() == 0)
+ if (m_result.isEmpty())
return 0;
ASSERT(m_result.size() % m_columns.size() == 0);
@@ -43,6 +43,19 @@ unsigned SQLResultSetRowList::length() const
return m_result.size() / m_columns.size();
}
+ExceptionOr<Vector<WTF::KeyValuePair<String, SQLValue>>> SQLResultSetRowList::item(unsigned index) const
+{
+ if (index >= length())
+ return Exception { INDEX_SIZE_ERR };
+
+ Vector<WTF::KeyValuePair<String, SQLValue>> result;
+
+ unsigned numberOfColumns = m_columns.size();
+ unsigned valuesIndex = index * numberOfColumns;
+ for (unsigned i = 0; i < numberOfColumns; i++)
+ result.append({ m_columns[i], m_result[valuesIndex + i] });
+
+ return WTFMove(result);
}
-#endif
+}