solnic / virtus

[DISCONTINUED ] Attributes on Steroids for Plain Old Ruby Objects
MIT License
3.77k stars 229 forks source link

Custom coercions example causes unitialized constant error #186

Closed lk0001 closed 11 years ago

lk0001 commented 11 years ago

Class NoisyString from https://github.com/solnic/virtus#custom-coercions causes following error:

$ irb
irb(main):001:0> require 'virtus'
=> true
irb(main):002:0> class NoisyString < Virtus::Attribute::String
irb(main):003:1>   class UpperCase < Virtus::Attribute::Writer::Coercible
irb(main):004:2>     def coerce(value)
irb(main):005:3>       super.upcase
irb(main):006:3>     end
irb(main):007:2>   end
irb(main):008:1> 
irb(main):009:1*   def self.writer_class(*)
irb(main):010:2>     UpperCase
irb(main):011:2>   end
irb(main):012:1> end
NameError: uninitialized constant Virtus::Attribute::Writer
    from (irb):3:in `<class:NoisyString>'
    from (irb):2
    from /home/lk0001/.rbenv/versions/1.9.3-p429/bin/irb:12:in `<main>'
irb(main):013:0> 

How can I make it work?

I'm using virtus 0.5.5.

solnic commented 11 years ago

This example is only working with 1.0.0.beta1