System.Data.SQLite

Check-in [88219678e3]
Login

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

Overview
Comment:Style and naming fixes.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | vtabFixes
Files: files | file ages | folders
SHA1: 88219678e3bc2728bac58ef7247630ee00ba3e32
User & Date: mistachkin 2015-12-04 06:31:38.776
Context
2015-12-04
06:35
Move test-only private methods to their own region within the SQLiteIndex class. check-in: 99625b3b90 user: mistachkin tags: vtabFixes
06:31
Style and naming fixes. check-in: 88219678e3 user: mistachkin tags: vtabFixes
06:20
Fix compilation on the .NET Compact Framework. check-in: 68ef61f0fa user: mistachkin tags: vtabFixes
Changes
Unified Diff Ignore Whitespace Patch
Changes to System.Data.SQLite/SQLiteModule.cs.
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
        /// pre-allocate space for.
        /// </param>
        /// <returns>
        /// The newly allocated native
        /// <see cref="UnsafeNativeMethods.sqlite3_index_info" /> structure
        /// -OR- <see cref="IntPtr.Zero" /> if it could not be fully allocated.
        /// </returns>
        internal static IntPtr AllocMemoryBlock( /* NOTE: For test use only. */
            int nConstraint,
            int nOrderBy
            )
        {
            IntPtr pIndex = IntPtr.Zero;
            IntPtr pInfo = IntPtr.Zero;
            IntPtr pConstraint = IntPtr.Zero;







|







1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
        /// pre-allocate space for.
        /// </param>
        /// <returns>
        /// The newly allocated native
        /// <see cref="UnsafeNativeMethods.sqlite3_index_info" /> structure
        /// -OR- <see cref="IntPtr.Zero" /> if it could not be fully allocated.
        /// </returns>
        private static IntPtr AllocateAndInitializeNative( /* NOTE: For test use only. */
            int nConstraint,
            int nOrderBy
            )
        {
            IntPtr pIndex = IntPtr.Zero;
            IntPtr pInfo = IntPtr.Zero;
            IntPtr pConstraint = IntPtr.Zero;
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461

1462
1463
1464
1465
1466
1467
1468
        /// <see cref="UnsafeNativeMethods.sqlite3_index_info" />
        /// structure.
        /// </summary>
        /// <param name="pIndex">
        /// The native pointer to the native sqlite3_index_info structure to
        /// free.
        /// </param>
        internal static void FreeMemoryBlock( /* NOTE: For test use only. */
            IntPtr pIndex
            )
        {
            if (pIndex == IntPtr.Zero)
                return;

            int offset = 0;

            offset = SQLiteMarshal.NextOffsetOf(
                offset, sizeof(int), IntPtr.Size);

            IntPtr pConstraint = SQLiteMarshal.ReadIntPtr(
                pIndex, offset);

            offset = SQLiteMarshal.NextOffsetOf(
                offset, IntPtr.Size, sizeof(int));

            offset = SQLiteMarshal.NextOffsetOf(
                offset, sizeof(int), IntPtr.Size);

            IntPtr pOrderBy = SQLiteMarshal.ReadIntPtr(pIndex, offset);


            offset = SQLiteMarshal.NextOffsetOf(
                offset, IntPtr.Size, IntPtr.Size);

            IntPtr pConstraintUsage = SQLiteMarshal.ReadIntPtr(
                pIndex, offset);








|




















|
>







1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
        /// <see cref="UnsafeNativeMethods.sqlite3_index_info" />
        /// structure.
        /// </summary>
        /// <param name="pIndex">
        /// The native pointer to the native sqlite3_index_info structure to
        /// free.
        /// </param>
        private static void FreeNative( /* NOTE: For test use only. */
            IntPtr pIndex
            )
        {
            if (pIndex == IntPtr.Zero)
                return;

            int offset = 0;

            offset = SQLiteMarshal.NextOffsetOf(
                offset, sizeof(int), IntPtr.Size);

            IntPtr pConstraint = SQLiteMarshal.ReadIntPtr(
                pIndex, offset);

            offset = SQLiteMarshal.NextOffsetOf(
                offset, IntPtr.Size, sizeof(int));

            offset = SQLiteMarshal.NextOffsetOf(
                offset, sizeof(int), IntPtr.Size);

            IntPtr pOrderBy = SQLiteMarshal.ReadIntPtr(
                pIndex, offset);

            offset = SQLiteMarshal.NextOffsetOf(
                offset, IntPtr.Size, IntPtr.Size);

            IntPtr pConstraintUsage = SQLiteMarshal.ReadIntPtr(
                pIndex, offset);

Changes to Tests/vtab.eagle.
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
  }

  if {[$index(1) Outputs.CanUseColumnsUsed]} then {
    $index(1) Outputs.ColumnsUsed [expr {wide(0xBADC0FFEE875621A)}]
  }

  set pIndex(1) [object invoke -create -flags +NonPublic \
      System.Data.SQLite.SQLiteIndex AllocMemoryBlock \
      $nConstraint $nOrderBy]

  object invoke -flags +NonPublic \
      System.Data.SQLite.SQLiteIndex ToIntPtr $index(1) $pIndex(1) true

  set index(2) [object create -alias -flags +NonPublic \
      System.Data.SQLite.SQLiteIndex $nConstraint $nOrderBy]







|







1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
  }

  if {[$index(1) Outputs.CanUseColumnsUsed]} then {
    $index(1) Outputs.ColumnsUsed [expr {wide(0xBADC0FFEE875621A)}]
  }

  set pIndex(1) [object invoke -create -flags +NonPublic \
      System.Data.SQLite.SQLiteIndex AllocateAndInitializeNative \
      $nConstraint $nOrderBy]

  object invoke -flags +NonPublic \
      System.Data.SQLite.SQLiteIndex ToIntPtr $index(1) $pIndex(1) true

  set index(2) [object create -alias -flags +NonPublic \
      System.Data.SQLite.SQLiteIndex $nConstraint $nOrderBy]
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
        [$index(2) Outputs.ColumnsUsed]} then {
      error "ColumnsUsed does not match"
    }
  }
} -cleanup {
  catch {
    object invoke -flags +NonPublic \
        System.Data.SQLite.SQLiteIndex FreeMemoryBlock $pIndex(1)
  }

  unset -nocomplain constraintUsage
  unset -nocomplain orderBy nOrderBy iOrderBy
  unset -nocomplain constraint nConstraint iConstraint
  unset -nocomplain pIndex index
} -constraints {eagle command.object System.Data.SQLite\
defineConstant.System.Data.SQLite.INTEROP_VIRTUAL_TABLE} -result {}}

###############################################################################

runSQLiteTestEpilogue
runTestEpilogue







|













1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
        [$index(2) Outputs.ColumnsUsed]} then {
      error "ColumnsUsed does not match"
    }
  }
} -cleanup {
  catch {
    object invoke -flags +NonPublic \
        System.Data.SQLite.SQLiteIndex FreeNative $pIndex(1)
  }

  unset -nocomplain constraintUsage
  unset -nocomplain orderBy nOrderBy iOrderBy
  unset -nocomplain constraint nConstraint iConstraint
  unset -nocomplain pIndex index
} -constraints {eagle command.object System.Data.SQLite\
defineConstant.System.Data.SQLite.INTEROP_VIRTUAL_TABLE} -result {}}

###############################################################################

runSQLiteTestEpilogue
runTestEpilogue