templates/default/module/setup.rb in yard-0.9.5 vs templates/default/module/setup.rb in yard-0.9.6
- old
+ new
@@ -1,5 +1,6 @@
+# frozen_string_literal: true
include Helpers::ModuleHelper
def init
sections :header, :box_info, :pre_docstring, T('docstring'), :children,
:constant_summary, [T('docstring')], :inherited_constants,
@@ -26,19 +27,19 @@
erb(:children)
end
def methodmissing
mms = object.meths(:inherited => true, :included => true)
- return unless @mm = mms.find {|o| o.name == :method_missing && o.scope == :instance }
- erb(:methodmissing)
+ @mm = mms.find {|o| o.name == :method_missing && o.scope == :instance }
+ erb(:methodmissing) if @mm
end
def method_listing(include_specials = true)
return @smeths ||= method_listing.reject {|o| special_method?(o) } unless include_specials
- return @meths if @meths
+ return @meths if defined?(@meths) && @meths
@meths = object.meths(:inherited => false, :included => !options.embed_mixins.empty?)
- if options.embed_mixins.size > 0
+ unless options.embed_mixins.empty?
@meths = @meths.reject {|m| options.embed_mixins_match?(m.namespace) == false }
end
@meths = sort_listing(prune_method_listing(@meths))
@meths
end
@@ -48,83 +49,80 @@
return true if meth.constructor?
false
end
def attr_listing
- return @attrs if @attrs
+ return @attrs if defined?(@attrs) && @attrs
@attrs = []
object.inheritance_tree(true).each do |superclass|
next if superclass.is_a?(CodeObjects::Proxy)
- next if options.embed_mixins.size > 0 &&
- !options.embed_mixins_match?(superclass)
+ next if !options.embed_mixins.empty? &&
+ !options.embed_mixins_match?(superclass)
[:class, :instance].each do |scope|
- superclass.attributes[scope].each do |name, rw|
+ superclass.attributes[scope].each do |_name, rw|
attr = prune_method_listing([rw[:read], rw[:write]].compact, false).first
@attrs << attr if attr
end
end
break if options.embed_mixins.empty?
end
@attrs = sort_listing(@attrs)
end
def constant_listing
- return @constants if @constants
+ return @constants if defined?(@constants) && @constants
@constants = object.constants(:included => false, :inherited => false)
@constants += object.cvars
@constants = run_verifier(@constants)
@constants
end
def sort_listing(list)
list.sort_by {|o| [o.scope.to_s, o.name.to_s.downcase] }
end
-def inherited_attr_list(&block)
+def inherited_attr_list
object.inheritance_tree(true)[1..-1].each do |superclass|
next if superclass.is_a?(YARD::CodeObjects::Proxy)
- next if options.embed_mixins.size > 0 && options.embed_mixins_match?(superclass) != false
+ next if !options.embed_mixins.empty? && options.embed_mixins_match?(superclass) != false
attribs = superclass.attributes[:instance]
- attribs = attribs.reject {|name, rw| object.child(:scope => :instance, :name => name) != nil }
- attribs = attribs.sort_by {|args| args.first.to_s }.map {|n, m| m[:read] || m[:write] }
+ attribs = attribs.select {|name, _rw| object.child(:scope => :instance, :name => name).nil? }
+ attribs = attribs.sort_by {|args| args.first.to_s }.map {|_n, m| m[:read] || m[:write] }
attribs = prune_method_listing(attribs, false)
- yield superclass, attribs if attribs.size > 0
+ yield superclass, attribs unless attribs.empty?
end
end
-def inherited_constant_list(&block)
+def inherited_constant_list
object.inheritance_tree(true)[1..-1].each do |superclass|
next if superclass.is_a?(YARD::CodeObjects::Proxy)
- next if options.embed_mixins.size > 0 && options.embed_mixins_match?(superclass) != false
+ next if !options.embed_mixins.empty? && options.embed_mixins_match?(superclass) != false
consts = superclass.constants(:included => false, :inherited => false)
- consts = consts.reject {|const| object.child(:type => :constant, :name => const.name) != nil }
+ consts = consts.select {|const| object.child(:type => :constant, :name => const.name).nil? }
consts = consts.sort_by {|const| const.name.to_s }
consts = run_verifier(consts)
- yield superclass, consts if consts.size > 0
+ yield superclass, consts unless consts.empty?
end
end
def docstring_full(obj)
- docstring = ""
- if obj.tags(:overload).size == 1 && obj.docstring.empty?
- docstring = obj.tag(:overload).docstring
- else
- docstring = obj.docstring
- end
+ docstring = obj.tags(:overload).size == 1 && obj.docstring.empty? ?
+ obj.tag(:overload).docstring : obj.docstring
if docstring.summary.empty? && obj.tags(:return).size == 1 && obj.tag(:return).text
- docstring = Docstring.new(obj.tag(:return).text.gsub(/\A([a-z])/) {|x| x.upcase }.strip)
+ docstring = Docstring.new(obj.tag(:return).text.gsub(/\A([a-z])/, &:upcase).strip)
end
docstring
end
def docstring_summary(obj)
docstring_full(obj).summary
end
def groups(list, type = "Method")
- if groups_data = object.groups
+ groups_data = object.groups
+ if groups_data
list.each {|m| groups_data |= [m.group] if m.group && owner != m.namespace }
others = list.select {|m| !m.group || !groups_data.include?(m.group) }
groups_data.each do |name|
items = list.select {|m| m.group == name }
yield(items, name) unless items.empty?