public static C4DocEnumerator *c4db_enumerateAllDocs(C4Database *database,
                                                      string startDocID,
                                                      string endDocID,
                                                      C4EnumeratorOptions *options,
                                                      C4Error *outError)
 {
     using (var startDocID_ = new C4String(startDocID))
         using (var endDocID_ = new C4String(endDocID)) {
             return(NativeRaw.c4db_enumerateAllDocs(database, startDocID_.AsC4Slice(), endDocID_.AsC4Slice(),
                                                    options, outError));
         }
 }
        public static C4DocEnumerator *c4db_enumerateSomeDocs(C4Database *database,
                                                              string[] docIDs,
                                                              C4EnumeratorOptions *options,
                                                              C4Error *outError)
        {
            var c4Strings = new C4String[docIDs.Length];

            for (int i = 0; i < docIDs.Length; i++)
            {
                c4Strings[i] = new C4String(docIDs[i]);
            }

            try {
                var c4Slices = c4Strings.Select(x => x.AsC4Slice()).ToArray();
                return(NativeRaw.c4db_enumerateSomeDocs(database, c4Slices, (UIntPtr)c4Slices.Length, options, outError));
            } finally {
                foreach (var s in c4Strings)
                {
                    s.Dispose();
                }
            }
        }
 public static extern C4DocEnumerator *c4db_enumerateAllDocs(C4Database *database, C4EnumeratorOptions *options, C4Error *outError);
 public static extern C4DocEnumerator *c4db_enumerateChanges(C4Database *database, ulong since, C4EnumeratorOptions *options, C4Error *outError);
 public static extern C4DocEnumerator *c4db_enumerateSomeDocs(C4Database *database,
                                                              C4Slice[] docIDs,
                                                              UIntPtr docIDsCount,
                                                              C4EnumeratorOptions *options,
                                                              C4Error *outError);
 public C4DocEnumerator *c4db_enumerateAllDocs(C4Database *database, C4EnumeratorOptions *options, C4Error *outError) => Native.c4db_enumerateAllDocs(database, options, outError);
 public C4DocEnumerator *c4db_enumerateChanges(C4Database *database, ulong since, C4EnumeratorOptions *options, C4Error *outError) => Native.c4db_enumerateChanges(database, since, options, outError);