class ReplaceNamedReferences

Attributes

named_references[RW]
sheet_name[RW]

Public Class Methods

replace(*args) click to toggle source
# File src/simplify/replace_named_references.rb, line 75
def self.replace(*args)
  self.new.replace(*args)
end

Public Instance Methods

replace(values,output) click to toggle source

Rewrites ast with named references

# File src/simplify/replace_named_references.rb, line 80
def replace(values,output)
  named_references = NamedReferences.new(@named_references)
  rewriter = ReplaceNamedReferencesAst.new(named_references,sheet_name)
  values.each_line do |line|
    # Looks to match shared string lines
    if line =~ /\[:named_reference/
      cols = line.split("\t")
      ast = cols.pop
      output.puts "#{cols.join("\t")}\t#{rewriter.map(eval(ast)).inspect}"
    else
      output.puts line
    end
  end
end