mirror of
https://github.com/middleman/middleman.git
synced 2022-11-09 12:20:27 -05:00
29 lines
654 B
Ruby
29 lines
654 B
Ruby
|
module Sprockets
|
||
|
class SourceFile
|
||
|
def source_lines
|
||
|
@lines ||= begin
|
||
|
lines = []
|
||
|
|
||
|
comments = []
|
||
|
File.open(pathname.absolute_location, 'rb') do |file|
|
||
|
file.each do |line|
|
||
|
lines << line = SourceLine.new(self, line, file.lineno)
|
||
|
|
||
|
if line.begins_pdoc_comment? || comments.any?
|
||
|
comments << line
|
||
|
end
|
||
|
|
||
|
if line.ends_multiline_comment?
|
||
|
if line.ends_pdoc_comment?
|
||
|
comments.each { |l| l.comment! }
|
||
|
end
|
||
|
comments.clear
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|
||
|
lines
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|