Loading lib/jsduck/doc_formatter.rb +11 −1 Original line number Diff line number Diff line Loading @@ -231,9 +231,14 @@ module JsDuck elsif cls && cls =~ /\./ if @relations[cls] return link(cls, nil, cls) else cls2, member2 = split_to_cls_and_member(cls) if @relations[cls2] && get_matching_member(cls2, member2) return link(cls2, member2, cls2+"."+member2) else warn_magic_link("#{cls} links to non-existing class") end end elsif !cls && member if get_matching_member(@class_context, member) return link(@class_context, member, member) Loading @@ -245,6 +250,11 @@ module JsDuck return "#{cls}#{member ? '#' : ''}#{member}" end def split_to_cls_and_member(str) parts = str.split(/\./) return [parts.slice(0, parts.length-1).join("."), parts.last] end def warn_magic_link(msg) Logger.instance.warn(:link_auto, msg, @doc_context[:filename], @doc_context[:linenr]) end Loading spec/doc_formatter_spec.rb +5 −0 Original line number Diff line number Diff line Loading @@ -212,6 +212,11 @@ describe JsDuck::DocFormatter do 'Look at <a href="Ext.form.Field#method-getValues">Ext.form.Field.getValues</a>' end it "converts Ext.encode to method link" do @formatter.replace("Look at Ext.encode").should == 'Look at <a href="Ext#method-encode">Ext.encode</a>' end it "converts #bar to link to current class method" do @formatter.replace("Look at #bar method").should == 'Look at <a href="Context#method-bar">bar</a> method' Loading Loading
lib/jsduck/doc_formatter.rb +11 −1 Original line number Diff line number Diff line Loading @@ -231,9 +231,14 @@ module JsDuck elsif cls && cls =~ /\./ if @relations[cls] return link(cls, nil, cls) else cls2, member2 = split_to_cls_and_member(cls) if @relations[cls2] && get_matching_member(cls2, member2) return link(cls2, member2, cls2+"."+member2) else warn_magic_link("#{cls} links to non-existing class") end end elsif !cls && member if get_matching_member(@class_context, member) return link(@class_context, member, member) Loading @@ -245,6 +250,11 @@ module JsDuck return "#{cls}#{member ? '#' : ''}#{member}" end def split_to_cls_and_member(str) parts = str.split(/\./) return [parts.slice(0, parts.length-1).join("."), parts.last] end def warn_magic_link(msg) Logger.instance.warn(:link_auto, msg, @doc_context[:filename], @doc_context[:linenr]) end Loading
spec/doc_formatter_spec.rb +5 −0 Original line number Diff line number Diff line Loading @@ -212,6 +212,11 @@ describe JsDuck::DocFormatter do 'Look at <a href="Ext.form.Field#method-getValues">Ext.form.Field.getValues</a>' end it "converts Ext.encode to method link" do @formatter.replace("Look at Ext.encode").should == 'Look at <a href="Ext#method-encode">Ext.encode</a>' end it "converts #bar to link to current class method" do @formatter.replace("Look at #bar method").should == 'Look at <a href="Context#method-bar">bar</a> method' Loading