1 // Copyright (c) 2013 The Chromium 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.
5 #ifndef CONTENT_BROWSER_INDEXED_DB_LEVELDB_LEVELDB_ITERATOR_H_
6 #define CONTENT_BROWSER_INDEXED_DB_LEVELDB_LEVELDB_ITERATOR_H_
8 #include "base/strings/string_piece.h"
9 #include "content/common/content_export.h"
10 #include "third_party/leveldatabase/src/include/leveldb/status.h"
14 class CONTENT_EXPORT LevelDBIterator
{
16 virtual ~LevelDBIterator() {}
17 virtual bool IsValid() const = 0;
18 virtual leveldb::Status
SeekToLast() = 0;
19 virtual leveldb::Status
Seek(const base::StringPiece
& target
) = 0;
20 virtual leveldb::Status
Next() = 0;
21 virtual leveldb::Status
Prev() = 0;
22 virtual base::StringPiece
Key() const = 0;
23 virtual base::StringPiece
Value() const = 0;
26 } // namespace content
28 #endif // CONTENT_BROWSER_INDEXED_DB_LEVELDB_LEVELDB_ITERATOR_H_