class Randrizer::Types::Optional
Constants
- PRESENCE_MAYBE
Public Class Methods
new(inner_type:, presence_prob: PRESENCE_MAYBE)
click to toggle source
# File lib/randrizer/types/optional.rb, line 11 def initialize(inner_type:, presence_prob: PRESENCE_MAYBE) @inner_type = inner_type @presence_prob = presence_prob end
Public Instance Methods
eval()
click to toggle source
# File lib/randrizer/types/optional.rb, line 21 def eval return SKIP if rand > @presence_prob @inner_type.eval end
validate!()
click to toggle source
# File lib/randrizer/types/optional.rb, line 16 def validate! raise ValidationError("presence_prob must be < 1.0") if @presence_prob > 1.0 raise ValidationError("presence_prob must be > 0.0") if @presence_prob < 0.0 end