comparison libstdc++-v3/include/bits/hashtable_policy.h @ 155:da32f4b04d38

fix __code name conflict
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 17:51:46 +0900
parents 1830386684a0
children
comparison
equal deleted inserted replaced
151:2eca1fb48fa2 155:da32f4b04d38
703 _H1, _H2, _Hash, _RehashPolicy, _Traits, true>:: 703 _H1, _H2, _Hash, _RehashPolicy, _Traits, true>::
704 operator[](const key_type& __k) 704 operator[](const key_type& __k)
705 -> mapped_type& 705 -> mapped_type&
706 { 706 {
707 __hashtable* __h = static_cast<__hashtable*>(this); 707 __hashtable* __h = static_cast<__hashtable*>(this);
708 __hash_code __code = __h->_M_hash_code(__k); 708 __hash_code __code0 = __h->_M_hash_code(__k);
709 std::size_t __bkt = __h->_M_bucket_index(__k, __code); 709 std::size_t __bkt = __h->_M_bucket_index(__k, __code0);
710 if (__node_type* __node = __h->_M_find_node(__bkt, __k, __code)) 710 if (__node_type* __node = __h->_M_find_node(__bkt, __k, __code0))
711 return __node->_M_v().second; 711 return __node->_M_v().second;
712 712
713 typename __hashtable::_Scoped_node __node { 713 typename __hashtable::_Scoped_node __node {
714 __h, 714 __h,
715 std::piecewise_construct, 715 std::piecewise_construct,
716 std::tuple<const key_type&>(__k), 716 std::tuple<const key_type&>(__k),
717 std::tuple<>() 717 std::tuple<>()
718 }; 718 };
719 auto __pos 719 auto __pos
720 = __h->_M_insert_unique_node(__k, __bkt, __code, __node._M_node); 720 = __h->_M_insert_unique_node(__k, __bkt, __code0, __node._M_node);
721 __node._M_node = nullptr; 721 __node._M_node = nullptr;
722 return __pos->second; 722 return __pos->second;
723 } 723 }
724 724
725 template<typename _Key, typename _Pair, typename _Alloc, typename _Equal, 725 template<typename _Key, typename _Pair, typename _Alloc, typename _Equal,
730 _H1, _H2, _Hash, _RehashPolicy, _Traits, true>:: 730 _H1, _H2, _Hash, _RehashPolicy, _Traits, true>::
731 operator[](key_type&& __k) 731 operator[](key_type&& __k)
732 -> mapped_type& 732 -> mapped_type&
733 { 733 {
734 __hashtable* __h = static_cast<__hashtable*>(this); 734 __hashtable* __h = static_cast<__hashtable*>(this);
735 __hash_code __code = __h->_M_hash_code(__k); 735 __hash_code __code0 = __h->_M_hash_code(__k);
736 std::size_t __bkt = __h->_M_bucket_index(__k, __code); 736 std::size_t __bkt = __h->_M_bucket_index(__k, __code0);
737 if (__node_type* __node = __h->_M_find_node(__bkt, __k, __code)) 737 if (__node_type* __node = __h->_M_find_node(__bkt, __k, __code0))
738 return __node->_M_v().second; 738 return __node->_M_v().second;
739 739
740 typename __hashtable::_Scoped_node __node { 740 typename __hashtable::_Scoped_node __node {
741 __h, 741 __h,
742 std::piecewise_construct, 742 std::piecewise_construct,
743 std::forward_as_tuple(std::move(__k)), 743 std::forward_as_tuple(std::move(__k)),
744 std::tuple<>() 744 std::tuple<>()
745 }; 745 };
746 auto __pos 746 auto __pos
747 = __h->_M_insert_unique_node(__k, __bkt, __code, __node._M_node); 747 = __h->_M_insert_unique_node(__k, __bkt, __code0, __node._M_node);
748 __node._M_node = nullptr; 748 __node._M_node = nullptr;
749 return __pos->second; 749 return __pos->second;
750 } 750 }
751 751
752 template<typename _Key, typename _Pair, typename _Alloc, typename _Equal, 752 template<typename _Key, typename _Pair, typename _Alloc, typename _Equal,
757 _H1, _H2, _Hash, _RehashPolicy, _Traits, true>:: 757 _H1, _H2, _Hash, _RehashPolicy, _Traits, true>::
758 at(const key_type& __k) 758 at(const key_type& __k)
759 -> mapped_type& 759 -> mapped_type&
760 { 760 {
761 __hashtable* __h = static_cast<__hashtable*>(this); 761 __hashtable* __h = static_cast<__hashtable*>(this);
762 __hash_code __code = __h->_M_hash_code(__k); 762 __hash_code __code0 = __h->_M_hash_code(__k);
763 std::size_t __bkt = __h->_M_bucket_index(__k, __code); 763 std::size_t __bkt = __h->_M_bucket_index(__k, __code0);
764 __node_type* __p = __h->_M_find_node(__bkt, __k, __code); 764 __node_type* __p = __h->_M_find_node(__bkt, __k, __code0);
765 765
766 if (!__p) 766 if (!__p)
767 __throw_out_of_range(__N("_Map_base::at")); 767 __throw_out_of_range(__N("_Map_base::at"));
768 return __p->_M_v().second; 768 return __p->_M_v().second;
769 } 769 }
776 _H1, _H2, _Hash, _RehashPolicy, _Traits, true>:: 776 _H1, _H2, _Hash, _RehashPolicy, _Traits, true>::
777 at(const key_type& __k) const 777 at(const key_type& __k) const
778 -> const mapped_type& 778 -> const mapped_type&
779 { 779 {
780 const __hashtable* __h = static_cast<const __hashtable*>(this); 780 const __hashtable* __h = static_cast<const __hashtable*>(this);
781 __hash_code __code = __h->_M_hash_code(__k); 781 __hash_code __code0 = __h->_M_hash_code(__k);
782 std::size_t __bkt = __h->_M_bucket_index(__k, __code); 782 std::size_t __bkt = __h->_M_bucket_index(__k, __code0);
783 __node_type* __p = __h->_M_find_node(__bkt, __k, __code); 783 __node_type* __p = __h->_M_find_node(__bkt, __k, __code0);
784 784
785 if (!__p) 785 if (!__p)
786 __throw_out_of_range(__N("_Map_base::at")); 786 __throw_out_of_range(__N("_Map_base::at"));
787 return __p->_M_v().second; 787 return __p->_M_v().second;
788 } 788 }