111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
|
# File 'lib/app2engine/rake/tasks.rb', line 111
def append_in_class(file, what)
file = resolve_name(file)
what = resolve_contents(what)
if File.read(file).include?(what)
already_done file
else
lines = File.readlines(file)
class_indent = lines.find { |line| line =~ /^\s*class .+$/ }.split(//).index('c')
class_end = lines.rindex { |line| line =~ /^\s{#{class_indent}}end\s*$/ }
what = what.split("\n").map { |line| line.chomp + "\n" }
lines = lines[0...class_end] + ["\n"] + what + lines[class_end..-1]
File.open(file, 'w') { |fh| fh.write(lines.join) }
status "Append #{file}".green
end
end
|