diff options
Diffstat (limited to 'spec/rubyspec/fixtures/class_variables.rb')
-rw-r--r-- | spec/rubyspec/fixtures/class_variables.rb | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/spec/rubyspec/fixtures/class_variables.rb b/spec/rubyspec/fixtures/class_variables.rb new file mode 100644 index 0000000000..02ca042230 --- /dev/null +++ b/spec/rubyspec/fixtures/class_variables.rb @@ -0,0 +1,58 @@ +module ClassVariablesSpec + + class ClassA + @@cvar_a = :cvar_a + + def cvar_a + @@cvar_a + end + + def cvar_a=(val) + @@cvar_a = val + end + end + + class ClassB < ClassA; end + + # Extended in ClassC + module ModuleM + @@cvar_m = :value + + def cvar_m + @@cvar_m + end + + def cvar_m=(val) + @@cvar_m = val + end + end + + # Extended in ModuleO + module ModuleN + @@cvar_n = :value + + def cvar_n + @@cvar_n + end + + def cvar_n=(val) + @@cvar_n = val + end + end + + module ModuleO + extend ModuleN + end + + class ClassC + extend ModuleM + + def self.cvar_defined? + self.class_variable_defined?(:@@cvar) + end + + def self.cvar_c=(val) + @@cvar = val + end + end +end |