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)