class Dentaku::AST::StringFunctions::Substitute

def self.max_param_count

def self.max_param_count
  3
end

def self.min_param_count

def self.min_param_count
  3
end

def initialize(*args)

def initialize(*args)
  super
  @original, @search, @replacement = *@args
end

def value(context = {})

def value(context = {})
  original = @original.value(context).to_s
  search = @search.value(context)
  search = search.to_s unless search.is_a?(Regexp)
  replacement = @replacement.value(context).to_s
  original.sub(search, replacement)
end