Class: JsDuck::Tag::Handler

Inherits:
MemberTag show all
Defined in:
lib/jsduck/tag/handler.rb

Overview

Introduce “handler” as a separate class member.

Constant Summary

Constants inherited from MemberTag

MemberTag::MEMBER_POS_CFG, MemberTag::MEMBER_POS_CSS_MIXIN, MemberTag::MEMBER_POS_CSS_VAR, MemberTag::MEMBER_POS_EVENT, MemberTag::MEMBER_POS_METHOD, MemberTag::MEMBER_POS_PROPERTY

Constants inherited from Tag

Tag::POS_ASIDE, Tag::POS_DEFAULT, Tag::POS_DEPRECATED, Tag::POS_DOC, Tag::POS_ENUM, Tag::POS_FIRES, Tag::POS_LOCALDOC, Tag::POS_OVERRIDES, Tag::POS_PARAM, Tag::POS_PREVENTABLE, Tag::POS_PRIVATE, Tag::POS_RETURN, Tag::POS_SINCE, Tag::POS_SUBPROPERTIES, Tag::POS_TEMPLATE, Tag::POS_THROWS, Tag::PRIORITY_CLASS, Tag::PRIORITY_COMPONENT, Tag::PRIORITY_SINGLETON

Instance Attribute Summary

Attributes inherited from MemberTag

#member_type

Attributes inherited from Tag

#class_icon, #css, #ext_define_default, #ext_define_pattern, #html_position, #pattern, #repeatable, #signature, #tagname

Instance Method Summary collapse

Methods inherited from MemberTag

#member_link, #member_params, #process_code

Methods inherited from Tag

descendants, #format, #parse_ext_define

Constructor Details

#initializeHandler

Returns a new instance of Handler.



9
10
11
12
13
14
15
16
17
# File 'lib/jsduck/tag/handler.rb', line 9

def initialize
  @pattern = "handler"
  @tagname = :handler
  @member_type = {
      :title => "Handlers",
      :position => MEMBER_POS_METHOD + 0.1,
      :icon => File.dirname(__FILE__) + "/icons/handler.png"
  }
end

Instance Method Details

#merge(h, docs, code) ⇒ Object



31
32
33
# File 'lib/jsduck/tag/handler.rb', line 31

def merge(h, docs, code)
  JsDuck::ParamsMerger.merge(h, docs, code)
end

#parse_doc(p, pos) ⇒ Object



20
21
22
23
24
25
# File 'lib/jsduck/tag/handler.rb', line 20

def parse_doc(p, pos)
  {
      :tagname => :handler,
      :name => p.ident,
  }
end

#process_doc(h, tags, pos) ⇒ Object



27
28
29
# File 'lib/jsduck/tag/handler.rb', line 27

def process_doc(h, tags, pos)
  h[:name] = tags[0][:name]
end

#to_html(event, cls) ⇒ Object



35
36
37
# File 'lib/jsduck/tag/handler.rb', line 35

def to_html(event, cls)
  member_link(event) + member_params(event[:params])
end