auto merge of #11125 : vmx/rust/rational, r=huonw
auto merge of #11125 : vmx/rust/rational, r=huonw

The Ratio::rational() converts a float (f32 and f64) into a
Ratio<BigInt>.

Closes #9838

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