示例#1
0
        internal override int ContextCollateCompare(CollationEncodingEnum enc, IntPtr context, string s1, string s2)
        {
#if !SQLITE_STANDARD
            byte[] b1;
            byte[] b2;
            System.Text.Encoding converter = null;

            switch (enc)
            {
            case CollationEncodingEnum.UTF8:
                converter = System.Text.Encoding.UTF8;
                break;

            case CollationEncodingEnum.UTF16LE:
                converter = System.Text.Encoding.Unicode;
                break;

            case CollationEncodingEnum.UTF16BE:
                converter = System.Text.Encoding.BigEndianUnicode;
                break;
            }

            b1 = converter.GetBytes(s1);
            b2 = converter.GetBytes(s2);

            return(UnsafeNativeMethods.sqlite3_context_collcompare(context, b1, b1.Length, b2, b2.Length));
#else
            throw new NotImplementedException();
#endif
        }
示例#2
0
文件: SQLite3.cs 项目: bdcliang/BD
        internal override int ContextCollateCompare(CollationEncodingEnum enc, IntPtr context, char[] c1, char[] c2)
        {
            Encoding unicode = null;

            switch (enc)
            {
            case CollationEncodingEnum.UTF8:
                unicode = Encoding.UTF8;
                break;

            case CollationEncodingEnum.UTF16LE:
                unicode = Encoding.Unicode;
                break;

            case CollationEncodingEnum.UTF16BE:
                unicode = Encoding.BigEndianUnicode;
                break;
            }
            byte[] bytes   = unicode.GetBytes(c1);
            byte[] buffer2 = unicode.GetBytes(c2);
            return(UnsafeNativeMethods.sqlite3_context_collcompare(context, bytes, bytes.Length, buffer2, buffer2.Length));
        }
示例#3
0
 internal abstract int ContextCollateCompare(CollationEncodingEnum enc, IntPtr context, char[] c1, char[] c2);
示例#4
0
 internal abstract int ContextCollateCompare(CollationEncodingEnum enc, IntPtr context, string s1, string s2);
示例#5
0
 internal override int ContextCollateCompare(CollationEncodingEnum enc, SqliteContextHandle context, char[] c1,
                                             char[] c2)
 {
     throw new NotImplementedException();
 }
示例#6
0
 internal abstract int ContextCollateCompare(CollationEncodingEnum enc, IntPtr context, char[] c1, char[] c2);
示例#7
0
 internal abstract int ContextCollateCompare(CollationEncodingEnum enc, IntPtr context, string s1, string s2);
 internal abstract int ContextCollateCompare(CollationEncodingEnum enc, SqliteContextHandle context, char[] c1,
                                             char[] c2);
 internal abstract int ContextCollateCompare(CollationEncodingEnum enc, SqliteContextHandle context, string s1,
                                             string s2);
示例#10
0
文件: SQLite3.cs 项目: GirlD/mono
    internal override int ContextCollateCompare(CollationEncodingEnum enc, IntPtr context, char[] c1, char[] c2)
    {
#if !SQLITE_STANDARD
      byte[] b1;
      byte[] b2;
      System.Text.Encoding converter = null;

      switch (enc)
      {
        case CollationEncodingEnum.UTF8:
          converter = System.Text.Encoding.UTF8;
          break;
        case CollationEncodingEnum.UTF16LE:
          converter = System.Text.Encoding.Unicode;
          break;
        case CollationEncodingEnum.UTF16BE:
          converter = System.Text.Encoding.BigEndianUnicode;
          break;
      }

      b1 = converter.GetBytes(c1);
      b2 = converter.GetBytes(c2);

      return UnsafeNativeMethods.sqlite3_context_collcompare(context, b1, b1.Length, b2, b2.Length);
#else
      throw new NotImplementedException();
#endif
    }
示例#11
0
 internal abstract int ContextCollateCompare(CollationEncodingEnum enc, SqliteContextHandle context, char[] c1,
                                             char[] c2);
示例#12
0
 internal abstract int ContextCollateCompare(CollationEncodingEnum enc, SqliteContextHandle context, string s1,
                                             string s2);
 internal override int ContextCollateCompare(CollationEncodingEnum enc, Wrapper.SqliteContextHandle context, string s1, string s2) {
     throw new NotImplementedException();
 }
示例#14
0
 internal override int ContextCollateCompare(CollationEncodingEnum enc, SqliteContextHandle context, char[] c1,
                                             char[] c2)
 {
     throw new NotImplementedException();
 }
示例#15
0
 internal override int ContextCollateCompare(CollationEncodingEnum enc, Wrapper.SqliteContextHandle context, string s1, string s2)
 {
     throw new NotImplementedException();
 }