Remove barrier_closure, big_ending, os_compat_* Change-Id: If2566a32c2802c4050993cdc97106e9b81d55c32 Reviewed-on: https://gn-review.googlesource.com/1543 Commit-Queue: Scott Graham <scottmg@chromium.org> Reviewed-by: Brett Wilson <brettw@chromium.org>
diff --git a/base/PRESUBMIT.py b/base/PRESUBMIT.py deleted file mode 100644 index 7fc8107..0000000 --- a/base/PRESUBMIT.py +++ /dev/null
@@ -1,49 +0,0 @@ -# Copyright (c) 2012 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. - -"""Chromium presubmit script for src/base. - -See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts -for more details on the presubmit API built into depot_tools. -""" - -def _CheckNoInterfacesInBase(input_api, output_api): - """Checks to make sure no files in libbase.a have |@interface|.""" - pattern = input_api.re.compile(r'^\s*@interface', input_api.re.MULTILINE) - files = [] - for f in input_api.AffectedSourceFiles(input_api.FilterSourceFile): - if (f.LocalPath().startswith('base/') and - not "/ios/" in f.LocalPath() and - not "/test/" in f.LocalPath() and - not f.LocalPath().endswith('_unittest.mm') and - not f.LocalPath().endswith('mac/sdk_forward_declarations.h')): - contents = input_api.ReadFile(f) - if pattern.search(contents): - files.append(f) - - if len(files): - return [ output_api.PresubmitError( - 'Objective-C interfaces or categories are forbidden in libbase. ' + - 'See http://groups.google.com/a/chromium.org/group/chromium-dev/' + - 'browse_thread/thread/efb28c10435987fd', - files) ] - return [] - - -def _CommonChecks(input_api, output_api): - """Checks common to both upload and commit.""" - results = [] - results.extend(_CheckNoInterfacesInBase(input_api, output_api)) - return results - -def CheckChangeOnUpload(input_api, output_api): - results = [] - results.extend(_CommonChecks(input_api, output_api)) - return results - - -def CheckChangeOnCommit(input_api, output_api): - results = [] - results.extend(_CommonChecks(input_api, output_api)) - return results
diff --git a/base/barrier_closure.cc b/base/barrier_closure.cc deleted file mode 100644 index 4426bb9..0000000 --- a/base/barrier_closure.cc +++ /dev/null
@@ -1,51 +0,0 @@ -// Copyright 2013 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. - -#include "base/barrier_closure.h" - -#include <utility> - -#include "base/atomic_ref_count.h" -#include "base/bind.h" -#include "base/memory/ptr_util.h" - -namespace base { -namespace { - -// Maintains state for a BarrierClosure. -class BarrierInfo { - public: - BarrierInfo(int num_callbacks_left, OnceClosure done_closure); - void Run(); - - private: - AtomicRefCount num_callbacks_left_; - OnceClosure done_closure_; -}; - -BarrierInfo::BarrierInfo(int num_callbacks, OnceClosure done_closure) - : num_callbacks_left_(num_callbacks), - done_closure_(std::move(done_closure)) {} - -void BarrierInfo::Run() { - DCHECK(!num_callbacks_left_.IsZero()); - if (!num_callbacks_left_.Decrement()) - std::move(done_closure_).Run(); -} - -} // namespace - -RepeatingClosure BarrierClosure(int num_callbacks_left, - OnceClosure done_closure) { - DCHECK_GE(num_callbacks_left, 0); - - if (num_callbacks_left == 0) - std::move(done_closure).Run(); - - return BindRepeating( - &BarrierInfo::Run, - Owned(new BarrierInfo(num_callbacks_left, std::move(done_closure)))); -} - -} // namespace base
diff --git a/base/barrier_closure.h b/base/barrier_closure.h deleted file mode 100644 index 282aa39..0000000 --- a/base/barrier_closure.h +++ /dev/null
@@ -1,28 +0,0 @@ -// Copyright 2013 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_BARRIER_CLOSURE_H_ -#define BASE_BARRIER_CLOSURE_H_ - -#include "base/base_export.h" -#include "base/callback.h" - -namespace base { - -// BarrierClosure executes |done_closure| after it has been invoked -// |num_closures| times. -// -// If |num_closures| is 0, |done_closure| is executed immediately. -// -// BarrierClosure is thread-safe - the count of remaining closures is -// maintained as a base::AtomicRefCount. |done_closure| will be run on -// the thread that calls the final Run() on the returned closures. -// -// |done_closure| is also cleared on the final calling thread. -BASE_EXPORT RepeatingClosure BarrierClosure(int num_closures, - OnceClosure done_closure); - -} // namespace base - -#endif // BASE_BARRIER_CLOSURE_H_
diff --git a/base/big_endian.cc b/base/big_endian.cc deleted file mode 100644 index 514581f..0000000 --- a/base/big_endian.cc +++ /dev/null
@@ -1,105 +0,0 @@ -// Copyright 2014 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. - -#include "base/big_endian.h" - -#include "base/strings/string_piece.h" - -namespace base { - -BigEndianReader::BigEndianReader(const char* buf, size_t len) - : ptr_(buf), end_(ptr_ + len) {} - -bool BigEndianReader::Skip(size_t len) { - if (ptr_ + len > end_) - return false; - ptr_ += len; - return true; -} - -bool BigEndianReader::ReadBytes(void* out, size_t len) { - if (ptr_ + len > end_) - return false; - memcpy(out, ptr_, len); - ptr_ += len; - return true; -} - -bool BigEndianReader::ReadPiece(base::StringPiece* out, size_t len) { - if (ptr_ + len > end_) - return false; - *out = base::StringPiece(ptr_, len); - ptr_ += len; - return true; -} - -template<typename T> -bool BigEndianReader::Read(T* value) { - if (ptr_ + sizeof(T) > end_) - return false; - ReadBigEndian<T>(ptr_, value); - ptr_ += sizeof(T); - return true; -} - -bool BigEndianReader::ReadU8(uint8_t* value) { - return Read(value); -} - -bool BigEndianReader::ReadU16(uint16_t* value) { - return Read(value); -} - -bool BigEndianReader::ReadU32(uint32_t* value) { - return Read(value); -} - -bool BigEndianReader::ReadU64(uint64_t* value) { - return Read(value); -} - -BigEndianWriter::BigEndianWriter(char* buf, size_t len) - : ptr_(buf), end_(ptr_ + len) {} - -bool BigEndianWriter::Skip(size_t len) { - if (ptr_ + len > end_) - return false; - ptr_ += len; - return true; -} - -bool BigEndianWriter::WriteBytes(const void* buf, size_t len) { - if (ptr_ + len > end_) - return false; - memcpy(ptr_, buf, len); - ptr_ += len; - return true; -} - -template<typename T> -bool BigEndianWriter::Write(T value) { - if (ptr_ + sizeof(T) > end_) - return false; - WriteBigEndian<T>(ptr_, value); - ptr_ += sizeof(T); - return true; -} - -bool BigEndianWriter::WriteU8(uint8_t value) { - return Write(value); -} - -bool BigEndianWriter::WriteU16(uint16_t value) { - return Write(value); -} - -bool BigEndianWriter::WriteU32(uint32_t value) { - return Write(value); -} - -bool BigEndianWriter::WriteU64(uint64_t value) { - return Write(value); -} - -} // namespace base
diff --git a/base/big_endian.h b/base/big_endian.h deleted file mode 100644 index 5684c67..0000000 --- a/base/big_endian.h +++ /dev/null
@@ -1,106 +0,0 @@ -// Copyright 2014 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_BIG_ENDIAN_H_ -#define BASE_BIG_ENDIAN_H_ - -#include <stddef.h> -#include <stdint.h> - -#include "base/base_export.h" -#include "base/strings/string_piece.h" - -namespace base { - -// Read an integer (signed or unsigned) from |buf| in Big Endian order. -// Note: this loop is unrolled with -O1 and above. -// NOTE(szym): glibc dns-canon.c use ntohs(*(uint16_t*)ptr) which is -// potentially unaligned. -// This would cause SIGBUS on ARMv5 or earlier and ARMv6-M. -template<typename T> -inline void ReadBigEndian(const char buf[], T* out) { - *out = buf[0]; - for (size_t i = 1; i < sizeof(T); ++i) { - *out <<= 8; - // Must cast to uint8_t to avoid clobbering by sign extension. - *out |= static_cast<uint8_t>(buf[i]); - } -} - -// Write an integer (signed or unsigned) |val| to |buf| in Big Endian order. -// Note: this loop is unrolled with -O1 and above. -template<typename T> -inline void WriteBigEndian(char buf[], T val) { - for (size_t i = 0; i < sizeof(T); ++i) { - buf[sizeof(T)-i-1] = static_cast<char>(val & 0xFF); - val >>= 8; - } -} - -// Specializations to make clang happy about the (dead code) shifts above. -template <> -inline void ReadBigEndian<uint8_t>(const char buf[], uint8_t* out) { - *out = buf[0]; -} - -template <> -inline void WriteBigEndian<uint8_t>(char buf[], uint8_t val) { - buf[0] = static_cast<char>(val); -} - -// Allows reading integers in network order (big endian) while iterating over -// an underlying buffer. All the reading functions advance the internal pointer. -class BASE_EXPORT BigEndianReader { - public: - BigEndianReader(const char* buf, size_t len); - - const char* ptr() const { return ptr_; } - int remaining() const { return end_ - ptr_; } - - bool Skip(size_t len); - bool ReadBytes(void* out, size_t len); - // Creates a StringPiece in |out| that points to the underlying buffer. - bool ReadPiece(base::StringPiece* out, size_t len); - bool ReadU8(uint8_t* value); - bool ReadU16(uint16_t* value); - bool ReadU32(uint32_t* value); - bool ReadU64(uint64_t* value); - - private: - // Hidden to promote type safety. - template<typename T> - bool Read(T* v); - - const char* ptr_; - const char* end_; -}; - -// Allows writing integers in network order (big endian) while iterating over -// an underlying buffer. All the writing functions advance the internal pointer. -class BASE_EXPORT BigEndianWriter { - public: - BigEndianWriter(char* buf, size_t len); - - char* ptr() const { return ptr_; } - int remaining() const { return end_ - ptr_; } - - bool Skip(size_t len); - bool WriteBytes(const void* buf, size_t len); - bool WriteU8(uint8_t value); - bool WriteU16(uint16_t value); - bool WriteU32(uint32_t value); - bool WriteU64(uint64_t value); - - private: - // Hidden to promote type safety. - template<typename T> - bool Write(T v); - - char* ptr_; - char* end_; -}; - -} // namespace base - -#endif // BASE_BIG_ENDIAN_H_
diff --git a/base/files/file_posix.cc b/base/files/file_posix.cc index 9f6ae16..b7a3e9d 100644 --- a/base/files/file_posix.cc +++ b/base/files/file_posix.cc
@@ -16,10 +16,6 @@ #include "base/threading/thread_restrictions.h" #include "build_config.h" -#if defined(OS_ANDROID) -#include "base/os_compat_android.h" -#endif - namespace base { // Make sure our Whence mappings match the system headers.
diff --git a/base/files/file_util_posix.cc b/base/files/file_util_posix.cc index 37fb015..1892baf 100644 --- a/base/files/file_util_posix.cc +++ b/base/files/file_util_posix.cc
@@ -49,11 +49,6 @@ #include "base/mac/foundation_util.h" #endif -#if defined(OS_ANDROID) -#include "base/android/content_uri_utils.h" -#include "base/os_compat_android.h" -#endif - #if !defined(OS_IOS) #include <grp.h> #endif
diff --git a/base/os_compat_nacl.cc b/base/os_compat_nacl.cc deleted file mode 100644 index 58fe93e..0000000 --- a/base/os_compat_nacl.cc +++ /dev/null
@@ -1,30 +0,0 @@ -// Copyright (c) 2012 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. - -#include "base/os_compat_nacl.h" - -#include <stdlib.h> -#include <time.h> - -#if !defined (__GLIBC__) - -extern "C" { -// Native Client has no timegm(). -time_t timegm(struct tm* tm) { - time_t ret; - char* tz; - tz = getenv("TZ"); - setenv("TZ", "", 1); - tzset(); - ret = mktime(tm); - if (tz) - setenv("TZ", tz, 1); - else - unsetenv("TZ"); - tzset(); - return ret; -} -} // extern "C" - -#endif // !defined (__GLIBC__)
diff --git a/base/os_compat_nacl.h b/base/os_compat_nacl.h deleted file mode 100644 index 13e0e3f..0000000 --- a/base/os_compat_nacl.h +++ /dev/null
@@ -1,16 +0,0 @@ -// Copyright (c) 2012 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_OS_COMPAT_NACL_H_ -#define BASE_OS_COMPAT_NACL_H_ - -#include <sys/types.h> - -#if !defined (__GLIBC__) -// NaCl has no timegm(). -extern "C" time_t timegm(struct tm* const t); -#endif // !defined (__GLIBC__) - -#endif // BASE_OS_COMPAT_NACL_H_ -
diff --git a/base/time/time_exploded_posix.cc b/base/time/time_exploded_posix.cc index ad95167..26eaed9 100644 --- a/base/time/time_exploded_posix.cc +++ b/base/time/time_exploded_posix.cc
@@ -18,12 +18,6 @@ #include "base/synchronization/lock.h" #include "build_config.h" -#if defined(OS_ANDROID) -#include "base/os_compat_android.h" -#elif defined(OS_NACL) -#include "base/os_compat_nacl.h" -#endif - #if defined(OS_MACOSX) static_assert(sizeof(time_t) >= 8, "Y2038 problem!"); #endif
diff --git a/tools/gn/command_gen.cc b/tools/gn/command_gen.cc index ca65877..44bf922 100644 --- a/tools/gn/command_gen.cc +++ b/tools/gn/command_gen.cc
@@ -2,7 +2,6 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "base/atomicops.h" #include "base/bind.h" #include "base/command_line.h" #include "base/strings/string_number_conversions.h"