class Ragel::Bitmap::Replace::Buffer

Represents the source as it changes

Attributes

lines[R]

Public Class Methods

new(source) click to toggle source
# File lib/ragel/bitmap/replace.rb, line 60
def initialize(source)
  @lines = source.split("\n")
end

Public Instance Methods

replace(table) click to toggle source
# File lib/ragel/bitmap/replace.rb, line 64
def replace(table)
  buffer = lines[table.start_line][/\A\s+/]
  source = ["#{buffer}#{table.source}"]

  @lines =
    lines[0...table.start_line] + source + lines[table.end_line..-1]
end
to_source() click to toggle source
# File lib/ragel/bitmap/replace.rb, line 72
def to_source
  "#{lines.join("\n")}\n"
end