summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/webrtc/system_wrappers/source/list_stl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/webrtc/system_wrappers/source/list_stl.cc')
-rw-r--r--chromium/third_party/webrtc/system_wrappers/source/list_stl.cc207
1 files changed, 0 insertions, 207 deletions
diff --git a/chromium/third_party/webrtc/system_wrappers/source/list_stl.cc b/chromium/third_party/webrtc/system_wrappers/source/list_stl.cc
deleted file mode 100644
index 81b6f0cc8af..00000000000
--- a/chromium/third_party/webrtc/system_wrappers/source/list_stl.cc
+++ /dev/null
@@ -1,207 +0,0 @@
-/*
- * Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
- *
- * Use of this source code is governed by a BSD-style license
- * that can be found in the LICENSE file in the root of the source
- * tree. An additional intellectual property rights grant can be found
- * in the file PATENTS. All contributing project authors may
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-#include "webrtc/system_wrappers/interface/list_wrapper.h"
-
-#include "webrtc/system_wrappers/interface/trace.h"
-
-namespace webrtc {
-
-ListItem::ListItem(const void* item)
- : this_iter_(),
- item_ptr_(item),
- item_(0) {
-}
-
-ListItem::ListItem(const unsigned int item)
- : this_iter_(),
- item_ptr_(0),
- item_(item) {
-}
-
-ListItem::~ListItem() {
-}
-
-void* ListItem::GetItem() const {
- return const_cast<void*>(item_ptr_);
-}
-
-unsigned int ListItem::GetUnsignedItem() const {
- return item_;
-}
-
-ListWrapper::ListWrapper()
- : list_() {
-}
-
-ListWrapper::~ListWrapper() {
- if (!Empty()) {
- // TODO(hellner) I'm not sure this loggin is useful.
- WEBRTC_TRACE(kTraceMemory, kTraceUtility, -1,
- "Potential memory leak in ListWrapper");
- // Remove all remaining list items.
- while (Erase(First()) == 0) {}
- }
-}
-
-bool ListWrapper::Empty() const {
- return list_.empty();
-}
-
-unsigned int ListWrapper::GetSize() const {
- return list_.size();
-}
-
-int ListWrapper::PushBack(const void* ptr) {
- ListItem* item = new ListItem(ptr);
- list_.push_back(item);
- return 0;
-}
-
-int ListWrapper::PushBack(const unsigned int item_id) {
- ListItem* item = new ListItem(item_id);
- list_.push_back(item);
- return 0;
-}
-
-int ListWrapper::PushFront(const unsigned int item_id) {
- ListItem* item = new ListItem(item_id);
- list_.push_front(item);
- return 0;
-}
-
-int ListWrapper::PushFront(const void* ptr) {
- ListItem* item = new ListItem(ptr);
- list_.push_front(item);
- return 0;
-}
-
-int ListWrapper::PopFront() {
- if (list_.empty()) {
- return -1;
- }
- list_.pop_front();
- return 0;
-}
-
-int ListWrapper::PopBack() {
- if (list_.empty()) {
- return -1;
- }
- list_.pop_back();
- return 0;
-}
-
-ListItem* ListWrapper::First() const {
- if (list_.empty()) {
- return NULL;
- }
- std::list<ListItem*>::iterator item_iter = list_.begin();
- ListItem* return_item = (*item_iter);
- return_item->this_iter_ = item_iter;
- return return_item;
-}
-
-ListItem* ListWrapper::Last() const {
- if (list_.empty()) {
- return NULL;
- }
- // std::list::end() addresses the last item + 1. Decrement so that the
- // actual last is accessed.
- std::list<ListItem*>::iterator item_iter = list_.end();
- --item_iter;
- ListItem* return_item = (*item_iter);
- return_item->this_iter_ = item_iter;
- return return_item;
-}
-
-ListItem* ListWrapper::Next(ListItem* item) const {
- if (item == NULL) {
- return NULL;
- }
- std::list<ListItem*>::iterator item_iter = item->this_iter_;
- ++item_iter;
- if (item_iter == list_.end()) {
- return NULL;
- }
- ListItem* return_item = (*item_iter);
- return_item->this_iter_ = item_iter;
- return return_item;
-}
-
-ListItem* ListWrapper::Previous(ListItem* item) const {
- if (item == NULL) {
- return NULL;
- }
- std::list<ListItem*>::iterator item_iter = item->this_iter_;
- if (item_iter == list_.begin()) {
- return NULL;
- }
- --item_iter;
- ListItem* return_item = (*item_iter);
- return_item->this_iter_ = item_iter;
- return return_item;
-}
-
-int ListWrapper::Insert(ListItem* existing_previous_item,
- ListItem* new_item) {
- // Allow existing_previous_item to be NULL if the list is empty.
- // TODO(hellner) why allow this? Keep it as is for now to avoid
- // breaking API contract.
- if (!existing_previous_item && !Empty()) {
- return -1;
- }
-
- if (!new_item) {
- return -1;
- }
-
- std::list<ListItem*>::iterator insert_location = list_.begin();
- if (!Empty()) {
- insert_location = existing_previous_item->this_iter_;
- if (insert_location != list_.end()) {
- ++insert_location;
- }
- }
-
- list_.insert(insert_location, new_item);
- return 0;
-}
-
-int ListWrapper::InsertBefore(ListItem* existing_next_item,
- ListItem* new_item) {
- // Allow existing_next_item to be NULL if the list is empty.
- // Todo: why allow this? Keep it as is for now to avoid breaking API
- // contract.
- if (!existing_next_item && !Empty()) {
- return -1;
- }
- if (!new_item) {
- return -1;
- }
-
- std::list<ListItem*>::iterator insert_location = list_.begin();
- if (!Empty()) {
- insert_location = existing_next_item->this_iter_;
- }
-
- list_.insert(insert_location, new_item);
- return 0;
-}
-
-int ListWrapper::Erase(ListItem* item) {
- if (item == NULL) {
- return -1;
- }
- list_.erase(item->this_iter_);
- return 0;
-}
-
-} // namespace webrtc