LoginSignup
1
0

More than 5 years have passed since last update.

メソッドチェインできるrubyプログラムの書き方

Posted at

元は全部のファイルを結合するrubyプログラムです

手元のエディタがおかしいのでインデントおかしくなってますが...

method_chain_suite_all.rb
# coding: utf-8

class All
  def initialize
    @name = ""
        @files = []
        @new_files = []
        @all_txt = ""
  end

    def glob_by_extension(extension)
        @files = Dir.glob("**/*."+extension)
        self
    end

    def txt_add(file)
        File.read(file)
    end

    def make_all_txt
        @new_files.each do |file|
            @all_txt << self::txt_add(file)
        end
        self
    end

    def file_write
        File.write @name, @all_txt
    end

    def file_write_detail(name)
      file = File.open(@name=name,"w")
      file << @all_txt
      file.close
        self
    end

    def delete_myself
        @files.delete(__FILE__) if @files.include?(__FILE__)
        @new_files = @files
        self
    end
end


All.new.glob_by_extension("txt").delete_myself.make_all_txt.file_write_detail("combining.txt")
All.new.glob_by_extension("rb").delete_myself.make_all_txt.file_write_detail("combining.rb")

参考
rubyメソッドチェーンの作り方

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0