class Forematter::Commands::Remove

Public Instance Methods

run() click to toggle source
# File lib/forematter/commands/remove.rb, line 15
def run
  files_with(field).each do |file|
    old = file[field].to_ruby
    log_skip(file, "#{field} is not an array") && next unless old.is_a?(Array)

    # Continue unless old contains elements of values
    next if (old & values).empty?
    values.each { |v| file[field].delete(v) }

    file.write
  end
end