lib/yuuki/caller.rb in yuuki-0.1.4 vs lib/yuuki/caller.rb in yuuki-0.1.5

- old
+ new

@@ -51,15 +51,18 @@ methods.select{|_sig, meta| meta[:enabled]}.map{|sig, meta| [instance.method(sig), meta]} end list.sort_by{|_method, meta| -(meta[:priority] || 0)} end - # returns all tags defined + # returns all tags defined as Set def tags - @instances.flat_map do |instance| + tags = @instances.flat_map do |instance| methods = instance.class.instance_variable_get(:@yuuki_methods) methods.select{|_sig, meta| meta[:enabled]}.flat_map{|_sig, meta| meta[:tags]} end + ret = Set.new + tags.each{|e| ret += e if e} + ret end # runs all methods # @param [Object] args arguments def run(**args, &block)