module Obfusk::Util::Valid

Public Class Methods

args(what, args, min, max = min) click to toggle source

validate args in min..max (min.. if max is nil) @return [Array] args @raise ArgumentError on out of bounds

# File lib/obfusk/util/valid.rb, line 23
def self.args(what, args, min, max = min)
  if (l = args.length) < min || (max && l > max)
    raise ArgumentError,
      "#{what} expected #{min}..#{max} arguments, got #{l}"
  end; args
end
invalid!(msg) click to toggle source

@raise ValidationError

# File lib/obfusk/util/valid.rb, line 31
def self.invalid!(msg)
  raise ValidationError, msg
end
validate!(x, rx, name) click to toggle source

validate value against regex @raise ValidationError on no match

# File lib/obfusk/util/valid.rb, line 37
def self.validate!(x, rx, name)
  x.to_s.match(/^(#{rx})$/) or invalid! "invalid #{name}"
end