diff --git a/lib/jsduck/table.rb b/lib/jsduck/table.rb index df79e1e1fc8534f465ed41b61e22d396861a2e8d..1af2119ecea8da34e7edc735cdfa96f8d361d78d 100644 --- a/lib/jsduck/table.rb +++ b/lib/jsduck/table.rb @@ -47,10 +47,22 @@ module JsDuck # Creates parameter list used in method and event signature. def short_param_list(item) + if item[:params].length == 0 + return "()" + end + params = item[:params].collect do |p| - (p[:type] || "Object") + " " + (p[:name] || "") + type = p[:type] || "Object" + name = p[:name] || "" + str = "#{type} #{name}" + if p[:doc] =~ /\(optional\)/ + "[" + str + "]" + else + str + end end - return params.length > 0 ? ("( " + params.join(", ") + " )") : "()" + + return "( " + params.join(", ") + " )" end # 116 chars is also where ext-doc makes its cut, but unlike