Commit 2295dcf7 authored by Rene Saarsoo's avatar Rene Saarsoo
Browse files

Move processing of aliases tags to Tag classes.

The tagnames from doc-comments and final field name are now the same -
:aliases.  Instead of the former case when one was named :alias and the
other :aliases.
parent 57574801
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -55,7 +55,7 @@ module JsDuck
          end
        end

        if tagname == :alias
        if tagname == :aliases
          # For backwards compatibility allow @xtype after @constructor
          groups[:class] << tag
        elsif group_name == :cfg
+0 −9
Original line number Diff line number Diff line
@@ -43,7 +43,6 @@ module JsDuck
        :tagname => :class,
        :name => detect_name(:class, doc_map),
        :doc => detect_doc(docs),
        :aliases => detect_aliases(doc_map),
        :enum => detect_enum(doc_map),
        :override => extract(doc_map, :override, :class),
      }, doc_map)
@@ -154,14 +153,6 @@ module JsDuck
      extract(doc_map, tagname, :default)
    end

    def detect_aliases(doc_map)
      if doc_map[:alias]
        doc_map[:alias].map {|tag| tag[:name] }
      else
        nil
      end
    end

    def detect_required(doc_map)
      doc_map[:cfg] && doc_map[:cfg].first[:optional] == false
    end
+6 −1
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@ module JsDuck::Tag
  class Alias < Inheritdoc
    def initialize
      @pattern = "alias"
      @key = :aliases
      @ext_define_pattern = "alias"
      @ext_define_default = {:aliases => []}
    end
@@ -22,10 +23,14 @@ module JsDuck::Tag

    # @alias widget.foo
    def parse_as_alias(p)
      p.add_tag(:alias)
      p.add_tag(:aliases)
      p.maybe_ident_chain(:name)
    end

    def process_doc(tags)
      tags.map {|tag| tag[:name] }
    end

    def parse_ext_define(cls, ast)
      cls[:aliases] += JsDuck::AstUtils.make_string_list(ast)
    end
+1 −1
Original line number Diff line number Diff line
@@ -8,7 +8,7 @@ module JsDuck::Tag

    # @ftype name
    def parse(p)
      p.add_tag(:alias)
      p.add_tag(:aliases)
      parse_alias_shorthand(p, "feature")
    end

+1 −1
Original line number Diff line number Diff line
@@ -8,7 +8,7 @@ module JsDuck::Tag

    # @ptype name
    def parse(p)
      p.add_tag(:alias)
      p.add_tag(:aliases)
      parse_alias_shorthand(p, "plugin")
    end

Loading