Coverage Report

Created: 2025-06-10 13:21

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/bitcoin/src/leveldb/db/write_batch_internal.h
Line
Count
Source
1
// Copyright (c) 2011 The LevelDB Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file. See the AUTHORS file for names of contributors.
4
5
#ifndef STORAGE_LEVELDB_DB_WRITE_BATCH_INTERNAL_H_
6
#define STORAGE_LEVELDB_DB_WRITE_BATCH_INTERNAL_H_
7
8
#include "db/dbformat.h"
9
#include "leveldb/write_batch.h"
10
11
namespace leveldb {
12
13
class MemTable;
14
15
// WriteBatchInternal provides static methods for manipulating a
16
// WriteBatch that we don't want in the public WriteBatch interface.
17
class WriteBatchInternal {
18
 public:
19
  // Return the number of entries in the batch.
20
  static int Count(const WriteBatch* batch);
21
22
  // Set the count for the number of entries in the batch.
23
  static void SetCount(WriteBatch* batch, int n);
24
25
  // Return the sequence number for the start of this batch.
26
  static SequenceNumber Sequence(const WriteBatch* batch);
27
28
  // Store the specified number as the sequence number for the start of
29
  // this batch.
30
  static void SetSequence(WriteBatch* batch, SequenceNumber seq);
31
32
2.32M
  static Slice Contents(const WriteBatch* batch) { return Slice(batch->rep_); }
33
34
2.32M
  static size_t ByteSize(const WriteBatch* batch) { return batch->rep_.size(); }
35
36
  static void SetContents(WriteBatch* batch, const Slice& contents);
37
38
  static Status InsertInto(const WriteBatch* batch, MemTable* memtable);
39
40
  static void Append(WriteBatch* dst, const WriteBatch* src);
41
};
42
43
}  // namespace leveldb
44
45
#endif  // STORAGE_LEVELDB_DB_WRITE_BATCH_INTERNAL_H_