Sha256: 5331f534616a2a4e7001b84b75b3380803ff69cb344e4e9f35b776a556aa1a69
Contents?: true
Size: 1.2 KB
Versions: 4
Compression:
Stored size: 1.2 KB
Contents
# encoding: utf-8 module Rubocop # ProcessedSource contains objects which are generated by Parser # and other information such as disabled lines for cops. # It also provides a convenient way to access source lines. class ProcessedSource attr_reader :buffer, :ast, :comments, :tokens, :diagnostics, :comment_config def initialize(buffer, ast, comments, tokens, diagnostics) @buffer = buffer @ast = ast @comments = comments @tokens = tokens @diagnostics = diagnostics @comment_config = CommentConfig.new(self) end def disabled_line_ranges comment_config.cop_disabled_line_ranges end def lines if @lines @lines else init_lines @lines end end def raw_lines if @raw_lines @raw_lines else init_lines @raw_lines end end def [](*args) lines[*args] end def valid_syntax? @diagnostics.none? { |d| [:error, :fatal].include?(d.level) } end def file_path @buffer.name end private def init_lines @raw_lines = @buffer.source.lines @lines = @raw_lines.map(&:chomp) end end end
Version data entries
4 entries across 4 versions & 1 rubygems