Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

Ruby | Module | class_variable_defined?

概要

Module#class_variable_defined?(name) -> bool

詳細

name で与えられた名前のクラス変数が存在する場合 true を 返却。

サンプルコード
require 'tbpgr_utils'

module Hogeable
  @@hoge = 1
end

class Hoge
  @@hoge = 2
end

class Hige
  include Hogeable
end

class Hage
end

bulk_puts_eval binding, <<-EOS
Hoge.class_variable_defined? :@@hoge
Hige.class_variable_defined? :@@hoge
Hage.class_variable_defined? :@@hoge
EOS

__END__
下記はTbpgrUtils gemの機能
bulk_puts_eval

https://rubygems.org/gems/tbpgr_utils
https://github.com/tbpgr/tbpgr_utils

出力

出力

Hoge.class_variable_defined? :@@hoge # => true
Hige.class_variable_defined? :@@hoge # => true
Hage.class_variable_defined? :@@hoge # => false