/root/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 | 0 |   static Slice Contents(const WriteBatch* batch) { return Slice(batch->rep_); } | 
| 33 |  |  | 
| 34 | 0 |   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_ |