module FileMutate
Public Class Methods
add_all(clazz)
click to toggle source
# File lib/file_mutation.rb, line 30 def self.add_all clazz add_mutate_exts clazz, mutate_apis end
add_mutate_exts(clazz, *names)
click to toggle source
# File lib/file_mutation.rb, line 34 def self.add_mutate_exts clazz, *names names.flat_uniq! unknowns = (names - mutate_apis) raise ArgumentError, "Unknown FileMutate APIs: #{unknowns}, must be one of: #{mutate_apis}" if !unknowns.empty? names.each do |api| ns = "FileMutate::#{api.to_s.camelize}" begin clazz.send :include, ns.constantize clazz.extend "#{ns}::ClassMethods".constantize end end end
mutate_apis()
click to toggle source
# File lib/file_mutation.rb, line 26 def self.mutate_apis [:delete, :mutate, :append_content, :insert_content, :overwrite_content, :remove_content, :replace_content] end