LCOV - code coverage report
Current view: top level - storage - mozStorageRow.h (source / functions) Hit Total Coverage
Test: output.info Lines: 1 2 50.0 %
Date: 2017-07-14 16:53:18 Functions: 1 2 50.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
       2             :  * vim: sw=2 ts=2 et lcs=trail\:.,tab\:>~ :
       3             :  * This Source Code Form is subject to the terms of the Mozilla Public
       4             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       5             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
       6             : 
       7             : #ifndef mozStorageRow_h
       8             : #define mozStorageRow_h
       9             : 
      10             : #include "mozIStorageRow.h"
      11             : #include "nsCOMArray.h"
      12             : #include "nsDataHashtable.h"
      13             : #include "mozilla/Attributes.h"
      14             : class nsIVariant;
      15             : struct sqlite3_stmt;
      16             : 
      17             : namespace mozilla {
      18             : namespace storage {
      19             : 
      20             : class Row final : public mozIStorageRow
      21             : {
      22             : public:
      23             :   NS_DECL_THREADSAFE_ISUPPORTS
      24             :   NS_DECL_MOZISTORAGEROW
      25             :   NS_DECL_MOZISTORAGEVALUEARRAY
      26             : 
      27           4 :   Row() : mNumCols(0) {}
      28             : 
      29             :   /**
      30             :    * Initializes the object with the given statement.  Copies the values from
      31             :    * the statement.
      32             :    *
      33             :    * @param aStatement
      34             :    *        The sqlite statement to pull results from.
      35             :    */
      36             :   nsresult initialize(sqlite3_stmt *aStatement);
      37             : 
      38             : private:
      39           0 :   ~Row() {}
      40             : 
      41             :   /**
      42             :    * The number of columns in this tuple.
      43             :    */
      44             :   uint32_t mNumCols;
      45             : 
      46             :   /**
      47             :    * Stores the data in the tuple.
      48             :    */
      49             :   nsCOMArray<nsIVariant> mData;
      50             : 
      51             :   /**
      52             :    * Maps a given name to a column index.
      53             :    */
      54             :   nsDataHashtable<nsCStringHashKey, uint32_t> mNameHashtable;
      55             : };
      56             : 
      57             : } // namespace storage
      58             : } // namespace mozilla
      59             : 
      60             : #endif // mozStorageRow_h

Generated by: LCOV version 1.13