Module: Svnx::ObjectUtil
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
-
#assign(args, symbols = Array.new) ⇒ Object
shortcut for “@var = args”, for multiple variable names, which are symbols.
- #create_invalid_fields_message(fields) ⇒ Object
-
#validate(args, valid = Array.new) ⇒ Object
raises an exception if any element in
argsis not invalid.
Methods included from ClassMethods
Class Method Details
.included(other) ⇒ Object
50 51 52 |
# File 'lib/svnx/util/objutil.rb', line 50 def self.included other other.extend ClassMethods end |
Instance Method Details
#assign(args, symbols = Array.new) ⇒ Object
shortcut for “@var = args”, for multiple variable names, which are symbols.
7 8 9 10 11 |
# File 'lib/svnx/util/objutil.rb', line 7 def assign args, symbols = Array.new symbols.each do |symbol| instance_variable_set "@" + symbol.to_s, args[symbol] end end |
#create_invalid_fields_message(fields) ⇒ Object
19 20 21 22 23 24 25 26 27 |
# File 'lib/svnx/util/objutil.rb', line 19 def fields Array.new.tap do |a| a << "invalid" a << (fields.size == 1 ? "field" : "fields" ) a << "for" a << self.class.to_s + ":" a.concat fields end.join(" ") end |
#validate(args, valid = Array.new) ⇒ Object
raises an exception if any element in args is not in valid.
14 15 16 17 |
# File 'lib/svnx/util/objutil.rb', line 14 def validate args, valid = Array.new invalid = args.keys.reject { |field| valid.include? field } invalid.empty? || raise( invalid) end |