<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -11,11 +11,13 @@ module ConstantizeAttribute
       module_eval &lt;&lt;-end_eval, __FILE__, __LINE__
 
         def #{name}= value
-          write_attribute(:#{name}, value.to_s)
+          value = value.nil? ? nil : value.to_s
+          write_attribute(:#{name}, value)
         end
 
         def #{name}
-          read_attribute(:#{name}).constantize
+          value = read_attribute(:#{name})
+          value.nil? ? nil : value.constantize
         end
 
       end_eval</diff>
      <filename>lib/constantize_attribute.rb</filename>
    </modified>
    <modified>
      <diff>@@ -53,4 +53,16 @@ class ConstantizeAttributeTest &lt; Test::Unit::TestCase
   def test_constantize_attributes_is_the_same_as_constantize_attribute
     assert_equal ConstantizeAttribute.instance_method(:constantize_attribute), ConstantizeAttribute.instance_method(:constantize_attributes)
   end
+  
+  def test_writer_passes_nil_along_as_nil
+    m = SomeModel.new
+    m.foo = nil
+    assert_nil m.attributes[:foo]
+  end
+
+  def test_reader_passes_nil_along_as_nil
+    m = SomeModel.new
+    m.attributes[:foo] = nil
+    assert_nil m.foo
+  end
 end</diff>
      <filename>test/constantize_attribute_test.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>4069d16ee287391b2c070d1c31f029a7d1dacd13</id>
    </parent>
  </parents>
  <author>
    <name>Chris O'Meara</name>
    <email>chris@omeara.com</email>
  </author>
  <url>http://github.com/duelinmarkers/constantize_attribute/commit/a2b13a10a043ec69ea9a56f214554e399ca6f0ba</url>
  <id>a2b13a10a043ec69ea9a56f214554e399ca6f0ba</id>
  <committed-date>2009-06-03T22:31:54-07:00</committed-date>
  <authored-date>2009-06-03T22:31:54-07:00</authored-date>
  <message>Changed attr readers and writers to preserve nil values</message>
  <tree>e901bff8011a29010cce89e0af30a8b1a6bdcadb</tree>
  <committer>
    <name>Chris O'Meara</name>
    <email>chris@omeara.com</email>
  </committer>
</commit>
