Class: Array
Class Method Summary collapse
Instance Method Summary collapse
-
#from_user_input(value) ⇒ Object
Checks each element of the value array to ensure that they match against the first element of self.
Class Method Details
Instance Method Details
#from_user_input(value) ⇒ Object
Checks each element of the value array to ensure that they match against the first element of self
141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 |
# File 'lib/user_input.rb', line 141 def from_user_input(value) value = [*value] # eliminate the obvious if (self.length != 1) raise ArgumentError, "Must supply only one element to an array you're calling from_user_input on." end innertype = self[0] # now check whether the inner elements of the array match output = value.collect {|innervalue| # if innertype is not an array, but value is, we need to flatten it if (!innertype.kind_of?(Array) && innervalue.kind_of?(Array)) innervalue = innervalue[0] end innertype.from_user_input(innervalue); # returns }.compact() if (output.length > 0) return output else return nil end end |