!RBIX 12079494195756429234 x M 1 n n x 10 __script__ i 73 5 7 0 64 47 49 1 1 15 5 7 2 64 47 49 1 1 15 5 7 3 64 47 49 1 1 15 5 7 4 64 47 49 1 1 15 5 7 5 64 47 49 1 1 15 99 7 6 65 49 7 2 13 99 12 7 8 12 7 9 12 65 12 49 10 4 15 49 8 0 15 2 11 I 6 I 0 I 0 I 0 n p 11 s 9 singleton x 7 require s 34 active_support/core_ext/array/wrap s 39 active_support/core_ext/module/aliasing s 44 active_support/core_ext/module/remove_method s 42 active_support/core_ext/string/inflections x 11 ActiveModel x 11 open_module x 15 __module_init__ M 1 n n x 11 ActiveModel i 55 5 66 99 7 0 65 49 1 2 13 99 12 7 2 12 7 3 12 65 12 49 4 4 15 49 2 0 15 99 7 5 1 65 49 6 3 13 99 12 7 7 12 7 8 12 65 12 49 4 4 15 49 7 0 11 I 6 I 0 I 0 I 0 n p 9 x 9 Observing x 11 open_module x 15 __module_init__ M 1 n n x 9 Observing i 57 5 66 5 45 0 1 43 2 47 49 3 1 15 99 7 4 65 49 5 2 13 99 12 7 6 12 7 7 12 65 12 49 8 4 15 49 6 0 15 5 48 9 15 99 7 10 7 11 65 67 49 12 0 49 13 4 11 I 6 I 0 I 0 I 0 n p 14 x 13 ActiveSupport n x 7 Concern x 6 extend x 12 ClassMethods x 11 open_module x 15 __module_init__ M 1 n n x 12 ClassMethods i 118 5 66 99 7 0 7 1 65 67 49 2 0 49 3 4 15 99 7 4 7 5 65 67 49 2 0 49 3 4 15 99 7 6 7 7 65 67 49 2 0 49 3 4 15 99 7 8 7 9 65 67 49 2 0 49 3 4 15 99 7 10 7 11 65 67 49 2 0 49 3 4 15 99 7 12 7 13 65 67 49 2 0 49 3 4 15 5 48 14 15 99 7 15 7 16 65 67 49 2 0 49 3 4 15 99 7 17 7 18 65 67 49 2 0 49 3 4 11 I 5 I 0 I 0 I 0 n p 19 x 10 observers= M 1 n n x 10 observers= i 8 20 0 49 0 0 38 1 11 I 2 I 1 I 0 I 0 I 0 p 2 x 7 flatten x 10 @observers p 5 I -1 I 1c I 0 I 1d I 8 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 6 values x 17 method_visibility x 15 add_defn_method x 9 observers M 1 n n x 9 observers i 11 39 0 13 10 10 15 35 0 38 0 11 I 2 I 0 I 0 I 0 n p 1 x 10 @observers p 5 I -1 I 21 I 0 I 22 I b x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 21 instantiate_observers M 1 n n x 21 instantiate_observers i 9 5 48 0 56 1 50 2 0 11 I 2 I 0 I 0 I 0 n p 3 x 9 observers M 1 p 2 x 9 for_block t n x 21 instantiate_observers i 12 57 19 0 15 5 20 0 47 49 0 1 11 I 4 I 1 I 1 I 1 n p 1 x 20 instantiate_observer p 3 I 0 I 27 I c x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 1 o x 4 each p 5 I -1 I 26 I 0 I 27 I 9 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 12 add_observer M 1 n n x 12 add_observer i 43 20 0 7 0 49 1 1 9 12 1 8 23 5 45 2 3 7 4 64 47 49 5 2 15 39 6 13 10 34 15 35 0 38 6 15 39 6 20 0 49 7 1 11 I 4 I 1 I 1 I 1 n p 8 x 6 update x 11 respond_to? x 13 ArgumentError n s 37 observer needs to respond to `update' x 5 raise x 19 @observer_instances x 2 << p 11 I -1 I 2a I 0 I 2b I c I 2c I 18 I 2e I 23 I 2f I 2b x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 8 observer x 16 notify_observers M 1 n n x 16 notify_observers i 26 5 7 0 49 1 1 9 12 7 2 8 13 1 9 24 39 0 56 3 50 4 0 8 25 1 11 I 4 I 2 I 0 I 0 I 0 p 5 x 19 @observer_instances x 31 __instance_variable_defined_p__ s 17 instance-variable M 1 p 2 x 9 for_block t n x 16 notify_observers i 17 57 22 1 1 15 21 1 1 21 1 0 36 1 51 0 0 11 I 4 I 0 I 1 I 1 n p 1 x 6 update p 5 I 0 I 34 I 5 I 35 I 11 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 4 each p 9 I -1 I 32 I 0 I 33 I f I 34 I 18 I 33 I 1a x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 2 x 3 arg x 8 observer x 15 count_observers M 1 n n x 15 count_observers i 6 39 0 49 1 0 11 I 1 I 0 I 0 I 0 n p 2 x 19 @observer_instances x 4 size p 5 I -1 I 3a I 0 I 3b I 6 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 9 protected x 20 instantiate_observer M 1 n n x 20 instantiate_observer i 61 20 0 7 0 49 1 1 9 27 20 0 49 2 0 49 3 0 49 4 0 49 5 0 19 0 8 60 20 0 7 5 49 1 1 9 43 20 0 49 5 0 8 60 5 45 6 7 20 0 47 101 2 7 8 63 2 47 49 9 2 11 I 5 I 1 I 1 I 1 n p 10 x 6 to_sym x 11 respond_to? x 4 to_s x 8 camelize x 11 constantize x 8 instance x 13 ArgumentError n s 185 must be a lowercase, underscored class name (or an instance of the class itself) responding to the instance method. Example: Person.observers = :big_brother # calls BigBrother.instance x 5 raise p 13 I -1 I 3f I 0 I 41 I 9 I 42 I 1b I 43 I 24 I 44 I 2b I 46 I 3d x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 8 observer x 9 inherited M 1 n n x 9 inherited i 14 54 89 0 15 5 7 1 20 0 47 49 2 2 11 I 4 I 1 I 1 I 1 n p 3 x 9 inherited x 24 observed_class_inherited x 16 notify_observers p 7 I -1 I 4b I 0 I 4c I 4 I 4d I e x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 8 subclass p 19 I 2 I 1c I 10 I 21 I 1e I 26 I 2c I 2a I 3a I 32 I 48 I 3a I 56 I 3e I 5a I 3f I 68 I 4b I 76 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 13 attach_method x 7 private x 16 notify_observers M 1 n n x 16 notify_observers i 11 5 49 0 0 20 0 5 49 1 2 11 I 4 I 1 I 1 I 1 n p 2 x 5 class x 16 notify_observers p 5 I -1 I 59 I 0 I 5a I b x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 6 method x 17 method_visibility x 15 add_defn_method p 9 I 2 I 9 I d I b I 27 I 51 I 2b I 59 I 39 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 13 attach_method x 8 Observer x 10 open_class x 14 __class_init__ M 1 n n x 8 Observer i 113 5 66 5 45 0 1 47 49 2 1 15 5 99 43 3 12 49 4 1 13 99 12 7 5 12 7 6 12 65 12 49 7 4 15 54 50 5 0 15 99 7 8 7 9 65 67 49 10 0 49 11 4 15 99 7 12 7 13 65 67 49 10 0 49 11 4 15 99 7 14 7 15 65 67 49 10 0 49 11 4 15 99 7 16 7 17 65 67 49 10 0 49 11 4 15 5 48 18 15 99 7 19 7 20 65 67 49 10 0 49 11 4 11 I 6 I 0 I 0 I 0 n p 21 x 9 Singleton n x 7 include x 4 Type x 22 object_singleton_class x 18 __metaclass_init__ M 1 n n x 18 __metaclass_init__ i 44 5 66 99 7 0 7 1 65 67 49 2 0 49 3 4 15 99 7 4 7 5 65 67 49 2 0 49 3 4 15 99 7 6 7 7 65 67 49 2 0 49 3 4 11 I 5 I 0 I 0 I 0 n p 8 x 7 observe M 1 n n x 7 observe i 32 20 0 49 0 0 15 20 0 56 1 50 2 0 15 5 7 3 47 49 4 1 15 5 7 3 56 5 47 50 6 1 11 I 4 I 1 I 0 I 0 I 0 p 7 x 8 flatten! M 1 p 2 x 9 for_block t n x 7 observe i 29 57 19 0 15 20 0 7 0 49 1 1 9 26 20 0 49 2 0 49 3 0 49 4 0 8 28 20 0 11 I 4 I 1 I 1 I 1 n p 5 x 6 to_sym x 11 respond_to? x 4 to_s x 8 camelize x 11 constantize p 3 I 0 I a0 I 1d x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 5 model x 8 collect! x 16 observed_classes x 22 remove_possible_method M 1 p 2 x 9 for_block t n x 7 observe i 4 21 1 0 11 I 2 I 0 I 0 I 0 I -2 p 0 p 3 I 0 I a2 I 4 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 13 define_method p 11 I -1 I 9e I 0 I 9f I 6 I a0 I e I a1 I 16 I a2 I 20 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 6 models x 17 method_visibility x 15 add_defn_method x 16 observed_classes M 1 n n x 16 observed_classes i 10 45 0 1 5 48 2 49 3 1 11 I 2 I 0 I 0 I 0 n p 4 x 5 Array n x 14 observed_class x 4 wrap p 5 I -1 I ae I 0 I af I a x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 14 observed_class M 1 n n x 14 observed_class i 38 5 48 0 7 1 13 70 9 21 15 44 43 2 7 3 78 49 4 2 6 1 79 49 5 2 19 0 9 36 20 0 49 6 0 8 37 1 11 I 5 I 1 I 0 I 0 n p 7 x 4 name n x 6 Regexp s 12 (.*)Observer x 3 new x 2 [] x 11 constantize p 9 I -1 I b4 I 0 I b5 I 1d I b6 I 24 I b8 I 26 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 19 observed_class_name p 7 I 2 I 9e I 10 I ae I 1e I b4 I 2c x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 13 attach_method x 10 initialize M 1 n n x 10 initialize i 9 5 48 0 56 1 50 2 0 11 I 2 I 0 I 0 I 0 n p 3 x 16 observed_classes M 1 p 2 x 9 for_block t n x 10 initialize i 12 57 19 0 15 5 20 0 47 49 0 1 11 I 4 I 1 I 1 I 1 n p 1 x 13 add_observer! p 3 I 0 I bf I c x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 5 klass x 4 each p 5 I -1 I be I 0 I bf I 9 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 17 method_visibility x 15 add_defn_method x 16 observed_classes M 1 n n x 16 observed_classes i 8 5 49 0 0 49 1 0 11 I 1 I 0 I 0 I 0 n p 2 x 5 class x 16 observed_classes p 5 I -1 I c2 I 0 I c3 I 8 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 6 update M 1 n n x 6 update i 22 5 20 0 47 49 0 1 9 20 5 20 0 20 1 47 49 1 2 8 21 1 11 I 5 I 2 I 2 I 2 n p 2 x 11 respond_to? x 4 send p 5 I -1 I c7 I 0 I c8 I 16 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 2 x 15 observed_method x 6 object x 24 observed_class_inherited M 1 n n x 24 observed_class_inherited i 25 5 49 0 0 5 48 1 20 0 35 1 81 2 49 3 1 15 5 20 0 47 49 4 1 11 I 4 I 1 I 1 I 1 n p 5 x 5 class x 16 observed_classes x 1 + x 7 observe x 13 add_observer! p 7 I -1 I cd I 0 I ce I 11 I cf I 19 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 8 subclass x 9 protected x 13 add_observer! M 1 n n x 13 add_observer! i 7 20 0 5 49 0 1 11 I 3 I 1 I 1 I 1 n p 1 x 12 add_observer p 5 I -1 I d3 I 0 I d4 I 7 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 1 x 5 klass p 17 I 2 I 9a I b I 9c I 27 I be I 35 I c2 I 43 I c7 I 51 I cd I 5f I d2 I 63 I d3 I 71 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 p 5 I 2 I 8 I 1c I 99 I 37 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0 x 13 attach_method p 13 I 0 I 1 I 9 I 2 I 12 I 3 I 1b I 4 I 24 I 5 I 2d I 7 I 49 x 78 /Users/santiago/WyeWorks/Projs/rails/activemodel/lib/active_model/observing.rb p 0