Skip to content

Instantly share code, notes, and snippets.

@amolbrid
Created November 26, 2010 02:17
Show Gist options
  • Save amolbrid/716201 to your computer and use it in GitHub Desktop.
Save amolbrid/716201 to your computer and use it in GitHub Desktop.
freeze instance, not variable pointing to instance
class FreezeTest
def initialize(str)
@text = str
end
end
obj1 = FreezeTest.new("obj1")
obj2 = FreezeTest.new("obj2")
obj3 = obj1
obj1.freeze
p "obj1 frozen? => #{obj1.frozen?}" # obj1 frozen? => true
p "obj2 frozen? => #{obj2.frozen?}" # obj2 frozen? => false
p "obj3 frozen? => #{obj3.frozen?}" # obj3 frozen? => true
obj1 = obj2
p "obj1 frozen? => #{obj1.frozen?}" # obj1 frozen? => false
p "obj2 frozen? => #{obj2.frozen?}" # obj2 frozen? => false
p "obj3 frozen? => #{obj3.frozen?}" # obj3 frozen? => true
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment