class RSpectre::Linter
Constants
- SOURCE_FILES
Public Class Methods
example_group()
click to toggle source
# File lib/rspectre/linter.rb, line 7 def self.example_group RSpec::Core::ExampleGroup end
node_map(file)
click to toggle source
# File lib/rspectre/linter.rb, line 32 def self.node_map(file) SOURCE_FILES[file] ||= SourceMap.parse(file) end
prepend_behavior(scope, method_name) { || ... }
click to toggle source
# File lib/rspectre/linter.rb, line 40 def self.prepend_behavior(scope, method_name) original_method = scope.instance_method(method_name) scope.__send__(:define_method, method_name) do |*args, &block| yield original_method.bind(self).(*args, &block) end end
record(node)
click to toggle source
# File lib/rspectre/linter.rb, line 36 def self.record(node) TRACKER.record(self::TAG, node) end
register(selector, locations) { |node| ... }
click to toggle source
# File lib/rspectre/linter.rb, line 11 def self.register(selector, locations) location = locations.first file = File.realpath(location.path) line = location.lineno return unless file.to_s.start_with?(File.realpath(Dir.pwd)) raw_node = node_map(file).find_method(selector, line) if raw_node node = RSpectre::Node.new(file, line, raw_node) TRACKER.register(self::TAG, node) if block_given? yield node else return node end end end