class ActionView::DependencyTracker::RubyTracker
:nodoc:
:nodoc:
def self.call(name, template, view_paths = nil)
def self.call(name, template, view_paths = nil) new(name, template, view_paths).dependencies end
def self.supports_view_paths? # :nodoc:
def self.supports_view_paths? # :nodoc: true end
def dependencies
def dependencies WildcardResolver.new(view_paths, render_dependencies + explicit_dependencies).resolve end
def explicit_dependencies
def explicit_dependencies template.source.scan(EXPLICIT_DEPENDENCY).flatten.uniq end
def initialize(name, template, view_paths = nil, parser_class: RenderParser::Default)
def initialize(name, template, view_paths = nil, parser_class: RenderParser::Default) @name, @template, @view_paths = name, template, view_paths @parser_class = parser_class end
def render_dependencies
def render_dependencies return [] unless template.source.include?("render") compiled_source = template.handler.call(template, template.source) @parser_class.new(@name, compiled_source).render_calls.filter_map do |render_call| render_call.gsub(%r|/_|, "/") end end