class NeoScout::ConstrainedSet
Public Class Methods
new(*args, &elem_test)
click to toggle source
Calls superclass method
# File lib/neoscout/tools.rb, line 51 def initialize(*args, &elem_test) @elem_test = elem_test case when args.length == 0 super when args.length == 1 args = args[0] raise ArgumentError unless (args.all? &@elem_test) super args else raise ArgumentError end end
Public Instance Methods
<<(elem)
click to toggle source
Calls superclass method
# File lib/neoscout/tools.rb, line 69 def <<(elem) raise ArgumentError unless valid_elem?(elem) super elem end
valid_elem?(elem)
click to toggle source
# File lib/neoscout/tools.rb, line 65 def valid_elem?(elem) @elem_test.call(elem) end