Cache regexp source on format validation to avoid allocating new objects
Cache regexp source on format validation to avoid allocating new objects

Example:

    >> r = /some-regexp/
    => /some-regexp/
    >> r.source.object_id == r.source.object_id
    => false

bradleypriest/rails,yawboakye/rails,EmmaB/rails-1,palkan/rails,yalab/rails,flanger001/rails,arjes/rails,untidy-hair/rails,kddeisz/rails,pvalena/rails,ttanimichi/rails,brchristian/rails,MichaelSp/rails,tijwelch/rails,kamipo/rails,travisofthenorth/rails,tgxworld/rails,matrinox/rails,illacceptanything/illacceptanything,maicher/rails,Edouard-chin/rails,yahonda/rails,stefanmb/rails,mijoharas/rails,illacceptanything/illacceptanything,schuetzm/rails,fabianoleittes/rails,Stellenticket/rails,schuetzm/rails,Vasfed/rails,repinel/rails,shioyama/rails,sealocal/rails,gavingmiller/rails,Vasfed/rails,gavingmiller/rails,illacceptanything/illacceptanything,alecspopa/rails,ngpestelos/rails,Erol/rails,arunagw/rails,assain/rails,arjes/rails,mechanicles/rails,coreyward/rails,iainbeeston/rails,BlakeWilliams/rails,georgeclaghorn/rails,Erol/rails,yawboakye/rails,riseshia/railsguides.kr,yhirano55/rails,voray/rails,yalab/rails,hanystudy/rails,ttanimichi/rails,starknx/rails,bolek/rails,gfvcastro/rails,Envek/rails,eileencodes/rails,untidy-hair/rails,pschambacher/rails,untidy-hair/rails,schuetzm/rails,mohitnatoo/rails,odedniv/rails,tjschuck/rails,joonyou/rails,utilum/rails,mechanicles/rails,kamipo/rails,matrinox/rails,kenta-s/rails,sealocal/rails,mtsmfm/railstest,koic/rails,fabianoleittes/rails,yhirano55/rails,utilum/rails,assain/rails,georgeclaghorn/rails,pschambacher/rails,mohitnatoo/rails,tjschuck/rails,EmmaB/rails-1,yasslab/railsguides.jp,yahonda/rails,rafaelfranca/omg-rails,hanystudy/rails,vipulnsward/rails,illacceptanything/illacceptanything,Vasfed/rails,baerjam/rails,printercu/rails,travisofthenorth/rails,gcourtemanche/rails,notapatch/rails,Erol/rails,lcreid/rails,rails/rails,vassilevsky/rails,rails/rails,kddeisz/rails,notapatch/rails,illacceptanything/illacceptanything,elfassy/rails,bolek/rails,palkan/rails,betesh/rails,Stellenticket/rails,kirs/rails-1,Edouard-chin/rails,kachick/rails,ledestin/rails,maicher/rails,schuetzm/rails,yhirano55/rails,vassilevsky/rails,ngpestelos/rails,esparta/rails,tjschuck/rails,ledestin/rails,kaspth/rails,shioyama/rails,utilum/rails,deraru/rails,sergey-alekseev/rails,felipecvo/rails,tgxworld/rails,gcourtemanche/rails,EmmaB/rails-1,coreyward/rails,flanger001/rails,richseviora/rails,Envek/rails,yasslab/railsguides.jp,alecspopa/rails,yahonda/rails,mohitnatoo/rails,travisofthenorth/rails,shioyama/rails,betesh/rails,Spin42/rails,kenta-s/rails,bogdanvlviv/rails,alecspopa/rails,tijwelch/rails,rails/rails,fabianoleittes/rails,riseshia/railsguides.kr,tgxworld/rails,jeremy/rails,amoody2108/TechForJustice,prathamesh-sonpatki/rails,aditya-kapoor/rails,Edouard-chin/rails,rossta/rails,mohitnatoo/rails,rbhitchcock/rails,samphilipd/rails,arjes/rails,mijoharas/rails,illacceptanything/illacceptanything,sealocal/rails,kamipo/rails,lucasmazza/rails,Spin42/rails,Edouard-chin/rails,eileencodes/rails,lcreid/rails,deraru/rails,Spin42/rails,kenta-s/rails,voray/rails,kddeisz/rails,notapatch/rails,odedniv/rails,kmcphillips/rails,mathieujobin/reduced-rails-for-travis,kaspth/rails,prathamesh-sonpatki/rails,rails/rails,Sen-Zhang/rails,rafaelfranca/omg-rails,yalab/rails,notapatch/rails,mechanicles/rails,yahonda/rails,illacceptanything/illacceptanything,koic/rails,arunagw/rails,georgeclaghorn/rails,mathieujobin/reduced-rails-for-travis,bolek/rails,xlymian/rails,mijoharas/rails,elfassy/rails,gfvcastro/rails,coreyward/rails,gavingmiller/rails,kaspth/rails,Envek/rails,riseshia/railsguides.kr,mtsmfm/rails,mtsmfm/railstest,illacceptanything/illacceptanything,kmcphillips/rails,palkan/rails,untidy-hair/rails,BlakeWilliams/rails,ledestin/rails,xlymian/rails,kachick/rails,MSP-Greg/rails,joonyou/rails,jeremy/rails,gauravtiwari/rails,kmayer/rails,utilum/rails,voray/rails,stefanmb/rails,illacceptanything/illacceptanything,fabianoleittes/rails,rbhitchcock/rails,yasslab/railsguides.jp,88rabbit/newRails,tgxworld/rails,MichaelSp/rails,yawboakye/rails,Erol/rails,gfvcastro/rails,Vasfed/rails,kirs/rails-1,riseshia/railsguides.kr,shioyama/rails,sergey-alekseev/rails,mtsmfm/railstest,88rabbit/newRails,matrinox/rails,joonyou/rails,esparta/rails,lucasmazza/rails,repinel/rails,marklocklear/rails,vipulnsward/rails,marklocklear/rails,deraru/rails,jeremy/rails,maicher/rails,elfassy/rails,ngpestelos/rails,travisofthenorth/rails,betesh/rails,iainbeeston/rails,gauravtiwari/rails,kmayer/rails,aditya-kapoor/rails,prathamesh-sonpatki/rails,mechanicles/rails,baerjam/rails,tjschuck/rails,kachick/rails,BlakeWilliams/rails,odedniv/rails,baerjam/rails,starknx/rails,yhirano55/rails,pvalena/rails,repinel/rails,printercu/rails,georgeclaghorn/rails,lucasmazza/rails,pvalena/rails,yasslab/railsguides.jp,aditya-kapoor/rails,lcreid/rails,eileencodes/rails,esparta/rails,hanystudy/rails,esparta/rails,stefanmb/rails,starknx/rails,88rabbit/newRails,vipulnsward/rails,Stellenticket/rails,jeremy/rails,joonyou/rails,printercu/rails,flanger001/rails,printercu/rails,assain/rails,bradleypriest/rails,rbhitchcock/rails,amoody2108/TechForJustice,eileencodes/rails,flanger001/rails,bogdanvlviv/rails,yalab/rails,kirs/rails-1,amoody2108/TechForJustice,kddeisz/rails,illacceptanything/illacceptanything,kmcphillips/rails,Sen-Zhang/rails,MichaelSp/rails,bradleypriest/rails,illacceptanything/illacceptanything,richseviora/rails,lcreid/rails,richseviora/rails,tijwelch/rails,brchristian/rails,prathamesh-sonpatki/rails,rossta/rails,mathieujobin/reduced-rails-for-travis,MSP-Greg/rails,xlymian/rails,MSP-Greg/rails,MSP-Greg/rails,felipecvo/rails,pschambacher/rails,gauravtiwari/rails,koic/rails,felipecvo/rails,deraru/rails,vassilevsky/rails,illacceptanything/illacceptanything,ttanimichi/rails,gfvcastro/rails,baerjam/rails,arunagw/rails,illacceptanything/illacceptanything,BlakeWilliams/rails,iainbeeston/rails,kmcphillips/rails,Stellenticket/rails,rafaelfranca/omg-rails,Envek/rails,Sen-Zhang/rails,illacceptanything/illacceptanything,samphilipd/rails,mtsmfm/rails,mtsmfm/rails,illacceptanything/illacceptanything,brchristian/rails,sergey-alekseev/rails,iainbeeston/rails,yawboakye/rails,kmayer/rails,betesh/rails,bogdanvlviv/rails,rossta/rails,marklocklear/rails,pvalena/rails,aditya-kapoor/rails,bogdanvlviv/rails,palkan/rails,vipulnsward/rails,repinel/rails,samphilipd/rails,assain/rails,gcourtemanche/rails,arunagw/rails