a Whq@sddlZddlZddlZdZddZddZdZdd ZGd d d ejj Z Gd d d ejj Z Gddde Z Gddde ZGddde ZGddde ZGddde ZGddde ZGdddejjZGdddejj ZGdddeZGd d!d!eZGd"d#d#eZGd$d%d%eZGd&d'd'eZGd(d)d)eZGd*d+d+ejjZGd,d-d-ejjZGd.d/d/eZGd0d1d1eZGd2d3d3ejjZ Gd4d5d5ejj Z!Gd6d7d7e!Z"Gd8d9d9e!Z#Gd:d;d;e!Z$Gdd?d?ejjZ&Gd@dAdAejj Z'GdBdCdCe'Z(GdDdEdEe'Z)GdFdGdGe'Z*GdHdIdIe'Z+GdJdKdKe'Z,GdLdMdMe'Z-GdNdOdOejjZ.GdPdQdQejj Z/GdRdSdSe/Z0GdTdUdUe/Z1GdVdWdWejjZ2GdXdYdYejj Z3GdZd[d[e3Z4Gd\d]d]e3Z5Gd^d_d_ejjZ6Gd`dadaejj Z7Gdbdcdce7Z8Gdddedee7Z9Gdfdgdgejj Z:Gdhdidie:Z;GdjdkdkejjZ$N) isinstancerTypetag_versioned_namespacerematch)xZ template_namerrris_specialization_of!s  rc@seZdZddZdS)LibStdCxxXMethodcCstjj||||_dSN)rxmethodXMethod__init__ worker_class)selfnamerrrrr.szLibStdCxxXMethod.__init__N)__name__ __module__ __qualname__rrrrrr-src@seZdZddZddZdS)ArrayWorkerBasecCs||_||_dSr) _val_type_sizerval_typesizerrrr6szArrayWorkerBase.__init__cCstd}||jS)Nz (void *) 0)rZparse_and_evalcastrpointer dereference)rZnullptrrrr null_value:s zArrayWorkerBase.null_valueN)rrrrr'rrrrr5src@s,eZdZddZddZddZddZd S) ArraySizeWorkercCst|||dSrrrr!rrrr@szArraySizeWorker.__init__cCsdSrrrrrr get_arg_typesCszArraySizeWorker.get_arg_typescCstSrr robjrrrget_result_typeFszArraySizeWorker.get_result_typecCs|jSr)r r-rrr__call__IszArraySizeWorker.__call__Nrrrrr+r/r0rrrrr(?sr(c@s,eZdZddZddZddZddZd S) ArrayEmptyWorkercCst|||dSrr)r!rrrrNszArrayEmptyWorker.__init__cCsdSrrr*rrrr+QszArrayEmptyWorker.get_arg_typescCstSrr r-rrrr/Tsz ArrayEmptyWorker.get_result_typecCst|jdkSNr)intr r-rrrr0WszArrayEmptyWorker.__call__Nr1rrrrr2Msr2c@s,eZdZddZddZddZddZd S) ArrayFrontWorkercCst|||dSrr)r!rrrr\szArrayFrontWorker.__init__cCsdSrrr*rrrr+_szArrayFrontWorker.get_arg_typescCs|jSrrr-rrrr/bsz ArrayFrontWorker.get_result_typecCs&t|jdkr|ddS|SdSNr_M_elemsr5r r'r-rrrr0es zArrayFrontWorker.__call__Nr1rrrrr6[sr6c@s,eZdZddZddZddZddZd S) ArrayBackWorkercCst|||dSrr)r!rrrrmszArrayBackWorker.__init__cCsdSrrr*rrrr+pszArrayBackWorker.get_arg_typescCs|jSrr7r-rrrr/sszArrayBackWorker.get_result_typecCs,t|jdkr |d|jdS|SdS)Nrr9r:r-rrrr0vszArrayBackWorker.__call__Nr1rrrrr;lsr;c@s,eZdZddZddZddZddZd S) ArrayAtWorkercCst|||dSrr)r!rrrr~szArrayAtWorker.__init__cCstSrr,r*rrrr+szArrayAtWorker.get_arg_typescCs|jSrr7rr.indexrrrr/szArrayAtWorker.get_result_typecCs4t|t|jkr(tdt||jf|d|S)Nz%Array index "%d" should not be >= %d.r9)r5r IndexErrorr>rrrr0s  zArrayAtWorker.__call__Nr1rrrrr=}sr=c@s,eZdZddZddZddZddZd S) ArraySubscriptWorkercCst|||dSrr)r!rrrrszArraySubscriptWorker.__init__cCstSrr,r*rrrr+sz"ArraySubscriptWorker.get_arg_typescCs|jSrr7r>rrrr/sz$ArraySubscriptWorker.get_result_typecCs&t|jdkr|d|S|SdSr8r:r>rrrr0s zArraySubscriptWorker.__call__Nr1rrrrrAsrAc@seZdZddZddZdS)ArrayMethodsMatchercsftjjtdtdttdttdttdt tdt tdt d_ fd d j D_ dS) Narrayr#emptyfrontbackat operator[]r#rDrErFrGrHcsg|]}j|qSr _method_dict.0mr*rr z0ArrayMethodsMatcher.__init__..)rrXMethodMatcherrmatcher_name_prefixrr(r2r6r;r=rArKmethodsr*rr*rrs zArrayMethodsMatcher.__init__cCs`t|dsdS|j|}|dus(|js,dSz|d}|d}WnYdS0|||S)NrCrr<)rrKgetenabledtemplate_argumentr)r class_type method_namemethodZ value_typer#rrrrs   zArrayMethodsMatcher.matchNrrrrrrrrrrBs rBc@s$eZdZddZddZddZdS)DequeWorkerBasecCs||_d|jpd|_dS)Nir<)rsizeof_bufsizerr"rrrrszDequeWorkerBase.__init__cCsf|dd}|dd}|d|dkr,dS|j|d|dd|d|d|d |dS) N_M_impl_M_start _M_finish_M_curr_M_noder<_M_first_M_lastr])rr.startfinishrrrr#s  zDequeWorkerBase.sizecCs`|dd}|d|d}||kr0|d|S||}|ddt||j}|||jS)Nr_r`rerbrcr<)r5r])rr.idxrgZfirst_node_sizeZ index_noderrrr?s  zDequeWorkerBase.indexN)rrrrr#r?rrrrr[s r[c@s$eZdZddZddZddZdS)DequeEmptyWorkercCsdSrrr*rrrr+szDequeEmptyWorker.get_arg_typescCstSrr3r-rrrr/sz DequeEmptyWorker.get_result_typecCs |ddd|dddkS)Nr_r`rbrarr-rrrr0szDequeEmptyWorker.__call__Nrrrr+r/r0rrrrrjsrjc@s$eZdZddZddZddZdS)DequeSizeWorkercCsdSrrr*rrrr+szDequeSizeWorker.get_arg_typescCstSrr,r-rrrr/szDequeSizeWorker.get_result_typecCs ||Srr#r-rrrr0szDequeSizeWorker.__call__Nrkrrrrrlsrlc@s$eZdZddZddZddZdS)DequeFrontWorkercCsdSrrr*rrrr+szDequeFrontWorker.get_arg_typescCs|jSrr7r-rrrr/sz DequeFrontWorker.get_result_typecCs|ddddS)Nr_r`rbrrr-rrrr0szDequeFrontWorker.__call__Nrkrrrrrnsrnc@s$eZdZddZddZddZdS)DequeBackWorkercCsdSrrr*rrrr+szDequeBackWorker.get_arg_typescCs|jSrr7r-rrrr/szDequeBackWorker.get_result_typecCs^|ddd|dddkrF|dddd}|d|jdS|ddddSdS) Nr_rarbrdrcr<rrfrr.Z prev_noderrrr0s zDequeBackWorker.__call__Nrkrrrrrosroc@s$eZdZddZddZddZdS)DequeSubscriptWorkercCstSrr,r*rrrr+ sz"DequeSubscriptWorker.get_arg_typescCs|jSrr7rr.Z subscriptrrrr/ sz$DequeSubscriptWorker.get_result_typecCs |||Sr)r?rsrrrr0szDequeSubscriptWorker.__call__Nrkrrrrrr srrc@s$eZdZddZddZddZdS) DequeAtWorkercCstSrr,r*rrrr+szDequeAtWorker.get_arg_typescCs|jSrr7r>rrrr/szDequeAtWorker.get_result_typecCs@t||}t||kr0tdt||fn |||SdS)Nz%Deque index "%d" should not be >= %d.)r5r#r@r?)rr.r?Z deque_sizerrrr0s   zDequeAtWorker.__call__Nrkrrrrrtsrtc@seZdZddZddZdS)DequeMethodsMatchercsftjjtdtdttdttdttdt tdt tdt d_ fd d j D_ dS) NdequerDr#rErFrHrG)rDr#rErFrHrGcsg|]}j|qSrrJrLr*rrrO0rPz0DequeMethodsMatcher.__init__..)rrrQrrRrrjrlrnrorrrtrKrSr*rr*rr%s zDequeMethodsMatcher.__init__cCs<t|dsdS|j|}|dus(|js,dS||dS)NrvrrrKrTrUrrVrrWrXrYrrrr2s   zDequeMethodsMatcher.matchNrZrrrrru$s ruc@seZdZddZddZdS)ForwardListWorkerBasecCs||_||_dSrr _node_typerr" node_typerrrr>szForwardListWorkerBase.__init__cCsdSrrr*rrrr+Bsz#ForwardListWorkerBase.get_arg_typesN)rrrrr+rrrrry=sryc@seZdZddZddZdS)ForwardListEmptyWorkercCstSrr3r-rrrr/Gsz&ForwardListEmptyWorker.get_result_typecCs|ddddkS)Nr__M_head_M_nextrrr-rrrr0JszForwardListEmptyWorker.__call__Nrrrr/r0rrrrr~Fsr~c@seZdZddZddZdS)ForwardListFrontWorkercCs|jSrr7r-rrrr/Osz&ForwardListFrontWorker.get_result_typecCs:|ddd|j}|ddj}||jS)Nr_rr _M_storage)r$r{addressrr%r&)rr.nodeZ val_addressrrrr0RszForwardListFrontWorker.__call__NrrrrrrNsrc@seZdZddZddZdS)ForwardListMethodsMatchercsJtd}tjj|tdttdtd_fddjD_ dS)N forward_listrDrE)rDrEcsg|]}j|qSrrJrLr*rrrO`rPz6ForwardListMethodsMatcher.__init__..) rRrrrQrrr~rrKrS)rZ matcher_namerr*rrYs z"ForwardListMethodsMatcher.__init__cCsXt|dsdS|j|}|dus(|js,dS|d}tt|d}| ||S)Nrr::_Node rrKrTrUrVrrstrr%rrrWrXrYr"r}rrrrbs   zForwardListMethodsMatcher.matchNrZrrrrrXs rc@s$eZdZddZddZddZdS)ListWorkerBasecCs||_||_dSrrzr|rrrrpszListWorkerBase.__init__cCsdSrrr*rrrr+tszListWorkerBase.get_arg_typescCsB|}|jdjdkr$|dS|dj}||jS)Nr<Z_M_datar)r&typefieldsrrr$rr%)rrZaddrrrrget_value_from_nodews  z"ListWorkerBase.get_value_from_nodeN)rrrrr+rrrrrrosrc@seZdZddZddZdS)ListEmptyWorkercCstSrr3r-rrrr/szListEmptyWorker.get_result_typecCs&|dd}|d|jkrdSdSdS)Nr_rcrTFr)rr.Z base_noderrrr0s zListEmptyWorker.__call__Nrrrrrrsrc@seZdZddZddZdS)ListSizeWorkercCstSrr,r-rrrr/szListSizeWorker.get_result_typecCs@|ddd}|ddj}d}||kr<|d}|d7}q"|S)Nr_rcrrr<r)rr.Z begin_nodeZend_noder#rrrr0s zListSizeWorker.__call__Nrrrrrrsrc@seZdZddZddZdS)ListFrontWorkercCs|jSrr7r-rrrr/szListFrontWorker.get_result_typecCs"|ddd|j}||S)Nr_rcrr$r{r)rr.rrrrr0szListFrontWorker.__call__Nrrrrrrsrc@seZdZddZddZdS)ListBackWorkercCs|jSrr7r-rrrr/szListBackWorker.get_result_typecCs"|ddd|j}||S)Nr_rcZ_M_prevrrqrrrr0szListBackWorker.__call__Nrrrrrrsrc@seZdZddZddZdS)ListMethodsMatchercsVtjjtdtdttdttdttdt d_ fddj D_ dS) NlistrDr#rErF)rDr#rErFcsg|]}j|qSrrJrLr*rrrOrPz/ListMethodsMatcher.__init__..) rrrQrrRrrrrrrKrSr*rr*rrs zListMethodsMatcher.__init__cCsXt|dsdS|j|}|dus(|js,dS|d}tt|d}| ||S)Nz(__cxx11::)?listrrrrrrrrs   zListMethodsMatcher.matchNrZrrrrrs rc@s$eZdZddZddZddZdS)VectorWorkerBasecCs ||_dSrr7r^rrrrszVectorWorkerBase.__init__cCsz|jjtjkr^|ddd}|ddd}|ddd}|jjd}||||S|dd|ddSdS)Nr_r`_M_praZ _M_offsetrcoderZTYPE_CODE_BOOLr&rr\)rr.rgrhZ finish_offsetbit_sizerrrr#szVectorWorkerBase.sizecCsj|jjtjkrV|ddd}|jjd}|||}||}|d|>@dkS|dd|SdS)Nr_r`rrr<rr)rr.r?rgrZvalpoffsetrrrrTs zVectorWorkerBase.getN)rrrrr#rTrrrrrs rc@s$eZdZddZddZddZdS)VectorEmptyWorkercCsdSrrr*rrrr+szVectorEmptyWorker.get_arg_typescCstSrr3r-rrrr/sz!VectorEmptyWorker.get_result_typecCst||dkSr4)r5r#r-rrrr0szVectorEmptyWorker.__call__Nrkrrrrrsrc@s$eZdZddZddZddZdS)VectorSizeWorkercCsdSrrr*rrrr+szVectorSizeWorker.get_arg_typescCstSrr,r-rrrr/sz VectorSizeWorker.get_result_typecCs ||Srrmr-rrrr0szVectorSizeWorker.__call__Nrkrrrrrsrc@s$eZdZddZddZddZdS)VectorFrontWorkercCsdSrrr*rrrr+szVectorFrontWorker.get_arg_typescCs|jSrr7r-rrrr/sz!VectorFrontWorker.get_result_typecCs ||dSr4)rTr-rrrr0szVectorFrontWorker.__call__Nrkrrrrrsrc@s$eZdZddZddZddZdS)VectorBackWorkercCsdSrrr*rrrr+szVectorBackWorker.get_arg_typescCs|jSrr7r-rrrr/sz VectorBackWorker.get_result_typecCs||t||dSNr<)rTr5r#r-rrrr0szVectorBackWorker.__call__Nrkrrrrrsrc@s$eZdZddZddZddZdS)VectorAtWorkercCstSrr,r*rrrr+ szVectorAtWorker.get_arg_typescCs|jSrr7r>rrrr/szVectorAtWorker.get_result_typecCs>t||}t||kr.tdt||f||t|S)Nz&Vector index "%d" should not be >= %d.)r5r#r@rT)rr.r?r#rrrr0s   zVectorAtWorker.__call__Nrkrrrrr src@s$eZdZddZddZddZdS)VectorSubscriptWorkercCstSrr,r*rrrr+sz#VectorSubscriptWorker.get_arg_typescCs|jSrr7rsrrrr/sz%VectorSubscriptWorker.get_result_typecCs||t|Sr)rTr5rsrrrr0!szVectorSubscriptWorker.__call__Nrkrrrrrsrc@seZdZddZddZdS)VectorMethodsMatchercsftjjtdtdttdttdttdt tdt tdt d_ fd d j D_ dS) Nvectorr#rDrErFrGrHrIcsg|]}j|qSrrJrLr*rrrO2rPz1VectorMethodsMatcher.__init__..)rrrQrrRrrrrrrrrKrSr*rr*rr&s  zVectorMethodsMatcher.__init__cCs<t|dsdS|j|}|dus(|js,dS||dS)Nrrrwrxrrrr4s   zVectorMethodsMatcher.matchNrZrrrrr%src@s$eZdZddZddZddZdS)AssociativeContainerWorkerBasecCs ||_dSrZ _unordered)r unorderedrrrr@sz'AssociativeContainerWorkerBase.__init__cCs&|jr|ddS|dddSdS)NZ_M_hZ_M_element_count_M_tr_Z _M_node_countrr-rrr node_countCs z)AssociativeContainerWorkerBase.node_countcCsdSrrr*rrrr+Isz,AssociativeContainerWorkerBase.get_arg_typesN)rrrrrr+rrrrr?src@seZdZddZddZdS)AssociativeContainerEmptyWorkercCstSrr3r-rrrr/Nsz/AssociativeContainerEmptyWorker.get_result_typecCst||dkSr4)r5rr-rrrr0Qsz(AssociativeContainerEmptyWorker.__call__NrrrrrrMsrc@seZdZddZddZdS)AssociativeContainerSizeWorkercCstSrr,r-rrrr/Vsz.AssociativeContainerSizeWorker.get_result_typecCs ||Sr)rr-rrrr0Ysz'AssociativeContainerSizeWorker.__call__NrrrrrrUsrc@seZdZddZddZdS)"AssociativeContainerMethodsMatchercsLtjjt||_tdttdtd_ fddj D_ dS)Nr#rD)r#rDcsg|]}j|qSrrJrLr*rrrOgrPz?AssociativeContainerMethodsMatcher.__init__..) rrrQrrR_namerrrrKrS)rrrr*rr^s z+AssociativeContainerMethodsMatcher.__init__cCsBt||jsdS|j|}|dus*|js.dSd|jv}||S)Nr)rrrKrTrUr)rrWrXrYrrrrris   z(AssociativeContainerMethodsMatcher.matchNrZrrrrr]s rc@s8eZdZdZddZddZddZdd Zd d Zd S) UniquePtrGetWorkerzS Implement std::unique_ptr::get() and std::unique_ptr::operator->(). cCs*|jtjk|_|jr ||_n||_dSrrrZTYPE_CODE_ARRAY _is_arraytarget _elem_typerZ elem_typerrrrzs zUniquePtrGetWorker.__init__cCsdSrrr*rrrr+sz UniquePtrGetWorker.get_arg_typescCs |jSrrr%r-rrrr/sz"UniquePtrGetWorker.get_result_typecCs|dkp|j SNrTrrrXrrr _supportsszUniquePtrGetWorker._supportscCs|jdjj}t|dr.|dd}nt|drB|d}ndS|jdj}|dj}|d}|jdkr||dS|jr||jSdSdS)Nrz__uniq_ptr_(data|impl)rtupler<Z _M_head_impl)r&rrr rrr$Z is_base_class)rr.Z impl_typeZ tuple_memberZtuple_impl_typeZtuple_head_typeZ head_fieldrrrr0s      zUniquePtrGetWorker.__call__N rrr__doc__rr+r/rr0rrrrrus rc@s0eZdZdZddZddZddZdd Zd S) UniquePtrDerefWorkerz*Implement std::unique_ptr::operator*().cCst||dSrrrrrrrrszUniquePtrDerefWorker.__init__cCs|jSrrr-rrrr/sz$UniquePtrDerefWorker.get_result_typecCs|j SrrrrrrrszUniquePtrDerefWorker._supportscCst||Sr)rr0r&r-rrrr0szUniquePtrDerefWorker.__call__Nrrrrrr/rr0rrrrrs rc@s8eZdZdZddZddZddZdd Zd d Zd S) UniquePtrSubscriptWorkerz1Implement std::unique_ptr::operator[](size_t).cCst||dSrrrrrrrsz!UniquePtrSubscriptWorker.__init__cCstSrr,r*rrrr+sz&UniquePtrSubscriptWorker.get_arg_typescCs|jSrrr>rrrr/sz(UniquePtrSubscriptWorker.get_result_typecCs|jSrrrrrrrsz"UniquePtrSubscriptWorker._supportscCst|||Sr)rr0r>rrrr0sz!UniquePtrSubscriptWorker.__call__Nrrrrrrs rc@seZdZddZddZdS)UniquePtrMethodsMatchercsVtjjtdtdttdttdttdtd_ fddj D_ dS) N unique_ptrrT operator-> operator*rH)rTrrrHcsg|]}j|qSrrJrLr*rrrOrPz4UniquePtrMethodsMatcher.__init__..) rrrQrrRrrrrrKrSr*rr*rrs z UniquePtrMethodsMatcher.__init__cCsNt|dsdS|j|}|dus(|js,dS||d}||rJ|SdS)NrrrrKrTrUrrVrrrWrXrYZworkerrrrrs   zUniquePtrMethodsMatcher.matchNrZrrrrrs rc@s8eZdZdZddZddZddZdd Zd d Zd S) SharedPtrGetWorkerzT Implements std::shared_ptr::get() and std::shared_ptr::operator->(). cCs*|jtjk|_|jr ||_n||_dSrrrrrrrs zSharedPtrGetWorker.__init__cCsdSrrr*rrrr+sz SharedPtrGetWorker.get_arg_typescCs |jSrrr-rrrr/sz"SharedPtrGetWorker.get_result_typecCs|dkp|j SrrrrrrrszSharedPtrGetWorker._supportscCs|dS)NZ_M_ptrrr-rrrr0szSharedPtrGetWorker.__call__Nrrrrrrs rc@s0eZdZdZddZddZddZdd Zd S) SharedPtrDerefWorkerz*Implement std::shared_ptr::operator*().cCst||dSrrrrrrrrszSharedPtrDerefWorker.__init__cCs|jSrrr-rrrr/sz$SharedPtrDerefWorker.get_result_typecCs|j SrrrrrrrszSharedPtrDerefWorker._supportscCst||Sr)rr0r&r-rrrr0szSharedPtrDerefWorker.__call__Nrrrrrrs rc@s8eZdZdZddZddZddZdd Zd d Zd S) SharedPtrSubscriptWorkerz1Implement std::shared_ptr::operator[](size_t).cCst||dSrrrrrrr sz!SharedPtrSubscriptWorker.__init__cCstSrr,r*rrrr+sz&SharedPtrSubscriptWorker.get_arg_typescCs|jSrrr>rrrr/sz(SharedPtrSubscriptWorker.get_result_typecCs|jSrrrrrrrsz"SharedPtrSubscriptWorker._supportscCsZtdt|j}|rJ|t|dkrJtd|jt|t|dft|||S)Nz .*\[(\d+)]$r<z.shared_ptr<%s> index "%d" should not be >= %d.) rrrrr5groupr@rr0)rr.r?rNrrrr0s z!SharedPtrSubscriptWorker.__call__Nrrrrrr s rc@s8eZdZdZddZddZddZdd Zd d Zd S) SharedPtrUseCountWorkerz*Implement std::shared_ptr::use_count().cCsdSrrrrrrr%sz SharedPtrUseCountWorker.__init__cCsdSrrr*rrrr+(sz%SharedPtrUseCountWorker.get_arg_typescCs tdS)NZlongrr-rrrr/+sz'SharedPtrUseCountWorker.get_result_typecCsdS)NTrrrrrr.sz!SharedPtrUseCountWorker._supportscCs|dd}|r|dSdS)NZ _M_refcountZ_M_piZ _M_use_countrr)rr.Z refcountsrrrr01s z SharedPtrUseCountWorker.__call__Nrrrrrr"s rc@s(eZdZdZddZddZddZdS) SharedPtrUniqueWorkerz'Implement std::shared_ptr::unique().cCst||dSr)rrrrrrr9szSharedPtrUniqueWorker.__init__cCs tdSrrr-rrrr/<sz%SharedPtrUniqueWorker.get_result_typecCst||dkSr)rr0r-rrrr0?szSharedPtrUniqueWorker.__call__N)rrrrrr/r0rrrrr6src@seZdZddZddZdS)SharedPtrMethodsMatchercsftjjtdtdttdttdttdttdt tdt d_ fd d j D_ dS) N shared_ptrrTrrrH use_countunique)rTrrrHrrcsg|]}j|qSrrJrLr*rrrOOrPz4SharedPtrMethodsMatcher.__init__..) rrrQrrRrrrrrrrKrSr*rr*rrDs z SharedPtrMethodsMatcher.__init__cCsNt|dsdS|j|}|dus(|js,dS||d}||rJ|SdS)NrrrrrrrrQs   zSharedPtrMethodsMatcher.matchNrZrrrrrCs rcCstj|ttj|ttj|ttj|ttj|ttj|tdtj|tdtj|tdtj|tdtj|tdtj|tdtj|tdtj|tdtj|t tj|t dS) NsetmapZmultisetZmultimapZ unordered_setZ unordered_mapZunordered_multisetZunordered_multimap) rrZregister_xmethod_matcherrBrrurrrrr)Zlocusrrrregister_libstdcxx_xmethods]s>r)>rZ gdb.xmethodrrRr r rrrrrZ XMethodWorkerrr(r2r6r;r=rArQrBr[rjrlrnrorrrtruryr~rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrsr                *