DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (d42c22627c8d)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
// Copyright (c) 2010 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef BASE_DIR_READER_FALLBACK_H_
#define BASE_DIR_READER_FALLBACK_H_
#pragma once

namespace base {

class DirReaderFallback {
 public:
  // Open a directory. If |IsValid| is true, then |Next| can be called to start
  // the iteration at the beginning of the directory.
  explicit DirReaderFallback(const char* directory_path) {}
  // After construction, IsValid returns true iff the directory was
  // successfully opened.
  bool IsValid() const { return false; }
  // Move to the next entry returning false if the iteration is complete.
  bool Next() { return false; }
  // Return the name of the current directory entry.
  const char* name() { return 0; }
  // Return the file descriptor which is being used.
  int fd() const { return -1; }
  // Returns true if this is a no-op fallback class (for testing).
  static bool IsFallback() { return true; }
};

}  // namespace base

#endif  // BASE_DIR_READER_FALLBACK_H_