Class: JsDuck::Js::Fires
- Inherits:
-
Object
- Object
- JsDuck::Js::Fires
- Includes:
- Util::Singleton
- Defined in:
- lib/jsduck/js/fires.rb
Overview
Looks the AST of a FunctionDeclaration or FunctionExpression for uses of this.fireEvent().
Instance Method Summary collapse
-
#detect(function_node) ⇒ Object
Returns array of event names fired by the given function.
Methods included from Util::Singleton
Instance Method Details
#detect(function_node) ⇒ Object
Returns array of event names fired by the given function. When no events fired, empty array is returned.
14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/jsduck/js/fires.rb', line 14 def detect(function_node) @traverser = Js::ScopedTraverser.new events = [] @traverser.traverse(function_node["body"]) do |node| if fire_event?(node) events << node["arguments"][0].to_value end end events.sort.uniq end |