auto merge of #7345 : blake2-ppc/rust/iterator-flat-map, r=thestinger
auto merge of #7345 : blake2-ppc/rust/iterator-flat-map, r=thestinger

flat_map_ produces an iterator that maps each element to an iterator,
and yields the elements of the produced iterators.

This is the monadic bind :: M a -> (a -> M b) -> M b  for iterators.

Named just like the vec method, but with a trailing underline until the
method resolution bug is resolved.

We discussed the name chain_map, but I decided to go with flat_map_ for consistency with vec.

Since it.map(f).flatten()  would be the same as it.flat_map(f), we could choose
to just implement a flatten method instead. Either way the possibilities are the same but flat_map is more convenient.

andars/rust,sae-bom/rust,pczarn/rust,kimroen/rust,achanda/rand,aneeshusa/rust,aturon/rust,aturon/rust,AerialX/rust,pelmers/rust,gifnksm/rust,emk/rust,pshc/rust,bombless/rust,l0kod/rust,victorvde/rust,sarojaba/rust-doc-korean,Ryman/rust,graydon/rust,KokaKiwi/rust,0x73/rust,cllns/rust,pshc/rust,dinfuehr/rust,GrahamDennis/rand,mitsuhiko/rust,ruud-v-a/rust,mihneadb/rust,mitsuhiko/rust,aidancully/rust,SiegeLord/rust,mihneadb/rust,hauleth/rust,omasanori/rust,P1start/rust,AerialX/rust-rt-minimal,mahkoh/rust,krzysz00/rust,nwin/rust,XMPPwocky/rust,michaelballantyne/rust-gpu,aturon/rust,reem/rust,miniupnp/rust,rprichard/rust,dwillmer/rust,0x73/rust,quornian/rust,aidancully/rust,seanrivera/rust,rohitjoshi/rust,kmcallister/rust,servo/rust,bombless/rust,pythonesque/rust,avdi/rust,kwantam/rust,sae-bom/rust,zachwick/rust,mitsuhiko/rust,servo/rust,dwillmer/rust,michaelballantyne/rust-gpu,Ryman/rust,TheNeikos/rust,graydon/rust,mihneadb/rust,quornian/rust,sarojaba/rust-doc-korean,ruud-v-a/rust,0x73/rust,jbclements/rust,zubron/rust,mahkoh/rust,LeoTestard/rust,fabricedesre/rust,krzysz00/rust,zubron/rust,victorvde/rust,j16r/rust,rprichard/rust,fabricedesre/rust,pythonesque/rust,ruud-v-a/rust,KokaKiwi/rust,fabricedesre/rust,seanrivera/rust,ktossell/rust,arthurprs/rand,stepancheg/rust-ide-rust,michaelballantyne/rust-gpu,ebfull/rust,XMPPwocky/rust,andars/rust,ebfull/rust,sae-bom/rust,AerialX/rust,pelmers/rust,kimroen/rust,dwillmer/rust,avdi/rust,fabricedesre/rust,graydon/rust,defuz/rust,mdinger/rust,pshc/rust,mitsuhiko/rust,carols10cents/rust,untitaker/rust,AerialX/rust,nwin/rust,krzysz00/rust,miniupnp/rust,michaelballantyne/rust-gpu,ebfull/rust,0x73/rust,TheNeikos/rust,0x73/rust,gifnksm/rust,XMPPwocky/rust,vhbit/rust,quornian/rust,stepancheg/rust-ide-rust,quornian/rust,stepancheg/rust-ide-rust,P1start/rust,jashank/rust,servo/rust,aturon/rust,kimroen/rust,bombless/rust,SiegeLord/rust,erickt/rust,rprichard/rust,untitaker/rust,Ryman/rust,zubron/rust,ejjeong/rust,pelmers/rust,ejjeong/rust,erickt/rust,sarojaba/rust-doc-korean,jashank/rust,avdi/rust,miniupnp/rust,emk/rust,GBGamer/rust,zaeleus/rust,mvdnes/rust,jbclements/rust,cllns/rust,mdinger/rust,dwillmer/rust,andars/rust,pczarn/rust,mdinger/rust,defuz/rust,cllns/rust,j16r/rust,aidancully/rust,cllns/rust,zubron/rust,0x73/rust,vhbit/rust,bombless/rust,dwillmer/rust,SiegeLord/rust,gifnksm/rust,mihneadb/rust,0x73/rust,vhbit/rust,barosl/rust,kwantam/rust,bombless/rust-docs-chinese,zachwick/rust,l0kod/rust,sarojaba/rust-doc-korean,jbclements/rust,ktossell/rust,jroesch/rust,P1start/rust,stepancheg/rust-ide-rust,vhbit/rust,rohitjoshi/rust,GBGamer/rust,jbclements/rust,richo/rust,pczarn/rust,erickt/rust,omasanori/rust,XMPPwocky/rust,aepsil0n/rust,jbclements/rust,kwantam/rust,philyoon/rust,robertg/rust,sarojaba/rust-doc-korean,jroesch/rust,nwin/rust,emk/rust,sae-bom/rust,mdinger/rust,LeoTestard/rust,l0kod/rust,graydon/rust,miniupnp/rust,pshc/rust,kmcallister/rust,jashank/rust,rohitjoshi/rust,mvdnes/rust,untitaker/rust,jroesch/rust,mdinger/rust,aidancully/rust,LeoTestard/rust,barosl/rust,nham/rust,j16r/rust,zubron/rust,bombless/rust,zaeleus/rust,emk/rust,avdi/rust,seanrivera/rust,l0kod/rust,richo/rust,mitsuhiko/rust,barosl/rust,mihneadb/rust,jashank/rust,GBGamer/rust,carols10cents/rust,kmcallister/rust,ejjeong/rust,seanrivera/rust,servo/rust,victorvde/rust,GBGamer/rust,omasanori/rust,j16r/rust,jbclements/rust,shepmaster/rand,reem/rust,kmcallister/rust,kmcallister/rust,ruud-v-a/rust,avdi/rust,TheNeikos/rust,aneeshusa/rust,mvdnes/rust,ktossell/rust,jroesch/rust,graydon/rust,andars/rust,mvdnes/rust,ktossell/rust,robertg/rust,carols10cents/rust,AerialX/rust,fabricedesre/rust,kimroen/rust,hauleth/rust,hauleth/rust,victorvde/rust,sarojaba/rust-doc-korean,KokaKiwi/rust,zaeleus/rust,l0kod/rust,AerialX/rust,P1start/rust,ejjeong/rust,nham/rust,j16r/rust,aidancully/rust,j16r/rust,krzysz00/rust,avdi/rust,philyoon/rust,ebfull/rust,jroesch/rust,kwantam/rust,kimroen/rust,jashank/rust,aepsil0n/rust,victorvde/rust,servo/rust,pshc/rust,richo/rust,fabricedesre/rust,mahkoh/rust,defuz/rust,dinfuehr/rust,richo/rust,j16r/rust,kimroen/rust,carols10cents/rust,ebfull/rust,defuz/rust,michaelballantyne/rust-gpu,KokaKiwi/rust,nwin/rust,andars/rust,miniupnp/rust,dwillmer/rust,zubron/rust,GBGamer/rust,victorvde/rust,barosl/rust,aneeshusa/rust,P1start/rust,mahkoh/rust,SiegeLord/rust,stepancheg/rust-ide-rust,zaeleus/rust,l0kod/rust,kimroen/rust,hauleth/rust,l0kod/rust,emk/rust,richo/rust,zaeleus/rust,sae-bom/rust,vhbit/rust,pczarn/rust,krzysz00/rust,kwantam/rust,quornian/rust,aturon/rust,mahkoh/rust,servo/rust,mahkoh/rust,jashank/rust,zachwick/rust,carols10cents/rust,ruud-v-a/rust,cllns/rust,barosl/rust,nwin/rust,SiegeLord/rust,hauleth/rust,dinfuehr/rust,rohitjoshi/rust,ruud-v-a/rust,zachwick/rust,richo/rust,mitsuhiko/rust,miniupnp/rust,mvdnes/rust,quornian/rust,aidancully/rust,jashank/rust,philyoon/rust,miniupnp/rust,stepancheg/rust-ide-rust,jashank/rust,aepsil0n/rust,jroesch/rust,hauleth/rust,andars/rust,quornian/rust,philyoon/rust,pczarn/rust,TheNeikos/rust,dinfuehr/rust,nwin/rust,vhbit/rust,omasanori/rust,dinfuehr/rust,AerialX/rust-rt-minimal,barosl/rust,GBGamer/rust,bluss/rand,dwillmer/rust,rprichard/rust,Ryman/rust,mitsuhiko/rust,barosl/rust,LeoTestard/rust,nham/rust,fabricedesre/rust,zaeleus/rust,pythonesque/rust,aepsil0n/rust,gifnksm/rust,SiegeLord/rust,zachwick/rust,aepsil0n/rust,erickt/rust,ebfull/rand,aneeshusa/rust,ejjeong/rust,KokaKiwi/rust,rprichard/rust,pshc/rust,Ryman/rust,dwillmer/rust,pythonesque/rust,P1start/rust,pczarn/rust,reem/rust,jroesch/rust,GBGamer/rust,LeoTestard/rust,huonw/rand,michaelballantyne/rust-gpu,graydon/rust,aturon/rust,zachwick/rust,l0kod/rust,Ryman/rust,bombless/rust,nham/rust,cllns/rust,kmcallister/rust,pelmers/rust,GBGamer/rust,kwantam/rust,ktossell/rust,emk/rust,carols10cents/rust,erickt/rust,nwin/rust,ktossell/rust,philyoon/rust,jbclements/rust,kmcallister/rust,nham/rust,rohitjoshi/rust,AerialX/rust,seanrivera/rust,omasanori/rust,pythonesque/rust,reem/rust,nham/rust,aneeshusa/rust,robertg/rust,gifnksm/rust,mdinger/rust,LeoTestard/rust,jbclements/rust,P1start/rust,TheNeikos/rust,robertg/rust,untitaker/rust,aepsil0n/rust,zubron/rust,robertg/rust,michaelballantyne/rust-gpu,rprichard/rust,pczarn/rust,pythonesque/rust,jroesch/rust,KokaKiwi/rust,sae-bom/rust,aneeshusa/rust,LeoTestard/rust,AerialX/rust-rt-minimal,defuz/rust,pshc/rust,erickt/rust,jbclements/rust,philyoon/rust,Ryman/rust,ktossell/rust,aturon/rust,rohitjoshi/rust,defuz/rust,reem/rust,nham/rust,waynenilsen/rand,zubron/rust,mihneadb/rust,omasanori/rust,untitaker/rust,ebfull/rust,AerialX/rust-rt-minimal,emk/rust,pshc/rust,retep998/rand,AerialX/rust-rt-minimal,mvdnes/rust,krzysz00/rust,vhbit/rust,bhickey/rand,dinfuehr/rust,ejjeong/rust,untitaker/rust,nwin/rust,stepancheg/rust-ide-rust,XMPPwocky/rust,vhbit/rust,pelmers/rust,pelmers/rust,seanrivera/rust,servo/rust,gifnksm/rust,sarojaba/rust-doc-korean,TheNeikos/rust,miniupnp/rust,SiegeLord/rust,robertg/rust,AerialX/rust-rt-minimal,pythonesque/rust,erickt/rust,reem/rust,XMPPwocky/rust