![]() |
|
|||
File indexing completed on 2025-07-30 08:46:18
0001 /* 0002 Copyright (c) 2005-2021 Intel Corporation 0003 0004 Licensed under the Apache License, Version 2.0 (the "License"); 0005 you may not use this file except in compliance with the License. 0006 You may obtain a copy of the License at 0007 0008 http://www.apache.org/licenses/LICENSE-2.0 0009 0010 Unless required by applicable law or agreed to in writing, software 0011 distributed under the License is distributed on an "AS IS" BASIS, 0012 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 0013 See the License for the specific language governing permissions and 0014 limitations under the License. 0015 */ 0016 0017 #ifndef _TBB_detail__intrusive_list_node_H 0018 #define _TBB_detail__intrusive_list_node_H 0019 0020 namespace tbb { 0021 namespace detail { 0022 namespace d1 { 0023 0024 //! Data structure to be inherited by the types that can form intrusive lists. 0025 /** Intrusive list is formed by means of the member_intrusive_list<T> template class. 0026 Note that type T must derive from intrusive_list_node either publicly or 0027 declare instantiation member_intrusive_list<T> as a friend. 0028 This class implements a limited subset of std::list interface. **/ 0029 struct intrusive_list_node { 0030 intrusive_list_node* my_prev_node{}; 0031 intrusive_list_node* my_next_node{}; 0032 #if TBB_USE_ASSERT 0033 intrusive_list_node() { my_prev_node = my_next_node = this; } 0034 #endif /* TBB_USE_ASSERT */ 0035 }; 0036 0037 } // namespace d1 0038 } // namespace detail 0039 } // namespace tbb 0040 0041 #endif // _TBB_detail__intrusive_list_node_H
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |