title: How does Conditional Validation work in rails
body: <p>Looking through the rails code, I can't see where conditional validation gets executed... when you pass a string or an symbol to <code>:if</code> it supposedly does an <code>eval</code> for strings and a <code>send</code> for symbols... where does that happen?</p>
  
  <p>Been trying to follow it through the code but I can't find where the <code>if</code> options are split into <code>send</code> or <code>eval</code> and how that all works. Just trying to learn and follow the through how rails does it.</p>
  
  <p><a href="https://github.com/rails/rails/blob/master/activemodel/lib/active_model/validator.rb" rel="nofollow">https://github.com/rails/rails/blob/master/activemodel/lib/active_model/validator.rb</a>
  <a href="https://github.com/rails/rails/blob/master/activemodel/lib/active_model/validations.rb" rel="nofollow">https://github.com/rails/rails/blob/master/activemodel/lib/active_model/validations.rb</a></p>
  
  <p>Thanks!</p>