1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

RubyでPHPのvar_dumpライクな機能を提供するGem『ruby_var_dump』をリリースしました

Last updated at Posted at 2024-05-18

Gem「ruby_var_dump」を作成&リリースしました

RubyでPHPのvar_dumpライクな機能を提供するGem『ruby_var_dump』をリリースしました

RubyGems.org
https://rubygems.org/gems/ruby_var_dump

Github
https://github.com/hirokiyam/ruby_var_dump

特徴

PHPのvar_dump関数に相当する機能をRubyで実現します。
変数の中身を詳細に表示するためのツールです。

使い方

Gemfileに以下を追記します。

gem 'ruby_var_dump'

gemをインストールします。

bundle install

使いたいクラスで呼び出す場合

ruby_var_dumpを使いたいクラスに以下を追加して、RubyVarDumpモジュールのメソッドを組み込みます。

require 'ruby_var_dump' #ファイルの先頭に追加

include RubyVarDump # classの先頭に追加

設定の例

以下は ruby_var_dump を使うサンプルのクラスの例です。

require 'ruby_var_dump'

class ExampleClass
  include RubyVarDump

  def demonstrate_dump
    # 変数に値を代入
    my_hash = {key1: "value1", key2: 123}
    my_array = [1, 2, 3, {nested_key: "nested_value"}]

    # dump というメソッドで実行
    dump my_hash
    dump my_array
  end
end

先頭で require 'ruby_var_dump' をして
クラス内部に include RubyVarDump を記述してください。

出力

上記の出力は以下のようになります。

{
  :key1 => "value1",
  :key2 => 123
}
=> nil

[
  1,
  2,
  3,
  {
    :nested_key => "nested_value"
  }
]
=> nil

Railsでの使い方

Railsに組み込む場合は以下のように設定します。

1. イニシャライズ用のファイルを作成

touch config/initializers/setup_ruby_var_dump.rb

config/initializers フォルダに、上記のように任意の名前でファイルを作成します。
上記は touch コマンドで setup_ruby_var_dump.rb という名前のファイルを作成しています。

2. ruby_var_dump をオブジェクトクラスに組み込む

# config/initializers/setup_ruby_var_dump.rb
require 'ruby_var_dump'
Object.include RubyVarDump

上記を記述して ruby_var_dump のモジュールをRubyのオブジェクトクラスに組み込みます。これにより dump メソッドがRailsアプリケーション内でグローバルに使えるようになります。

1 と 2 をワンライナーで行う場合

以下をコマンドラインで実行してください。

echo -e "# config/initializers/setup_ruby_var_dump.rb\nrequire 'ruby_var_dump'\nObject.include RubyVarDump" > config/initializers/setup_ruby_var_dump.rb

メソッドの使い方

出力は「dump」というメソッドで行います。

実行

dump "abc"

出力

"abc"
=> nil

実行

item = {key1: "value1", key2: 1024, key3: {key4: {key5: "value5", key6: [11,22]}}}
dump item

出力

{
  :key1 => "value1",
  :key2 => 1024,
  :key3 => {
    :key4 => {
      :key5 => "value5",
      :key6 => [
        11,
        22
      ]
    }
  }
}
=> nil

このように配列はハッシュなどのオブジェクトがグラフィカルに出力されます。

バージョン0.1.4でActive Recordの出力にも対応しました。

バグ報告などがございましたらお気軽にご連絡いただけますと幸いです。

1
2
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
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?