class Rigor::ModuleGraph::Plugin
Rigor plugin: declares the node rules that emit class/module/ constant dependency edges as :info diagnostics. Loaded only when rigortype is available (see plugin.rb).
Public Instance Methods
Source
# File lib/rigor/module_graph/plugin/rigor_plugin.rb, line 105 def analyzer_for(scope, path, context, visibility_map) Analyzer.new( path: path, context: context, scope: scope, zeitwerk: zeitwerk_resolver, visibility_map: visibility_map ) end
Source
# File lib/rigor/module_graph/plugin/rigor_plugin.rb, line 127 def edge_diagnostic(edge, node) diagnostic( node, path: edge.path, message: JSON.generate(edge.to_message_payload), severity: :info, rule: EDGE_RULE ) end
Source
# File lib/rigor/module_graph/plugin/rigor_plugin.rb, line 137 def node_diagnostic(meta, ast_node) diagnostic( ast_node, path: meta.path, message: JSON.generate(meta.to_message_payload), severity: :info, rule: NODE_RULE ) end
Source
# File lib/rigor/module_graph/plugin/rigor_plugin.rb, line 115 def zeitwerk_resolver return @zeitwerk_resolver if defined?(@zeitwerk_resolver) @zeitwerk_resolver = if config["rails_zeitwerk"] ZeitwerkResolver.new( autoload_paths: config["autoload_paths"], concern_dirs: config["concern_dirs"] ) end end