Changeset 1677
- Timestamp:
- 11/26/05 23:29:22 (3 years ago)
- Files:
-
- trunk/lib/soap/mapping/mapping.rb (modified) (1 diff)
- trunk/lib/soap/mapping/registry.rb (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/lib/soap/mapping/mapping.rb
r1663 r1677 332 332 333 333 def self.define_attr_accessor(obj, name, getterproc, setterproc = nil) 334 define_singleton_method(obj, name, &getterproc) 334 define_singleton_method(obj, name, &getterproc) if getterproc 335 335 define_singleton_method(obj, name + '=', &setterproc) if setterproc 336 336 end trunk/lib/soap/mapping/registry.rb
r1581 r1677 137 137 def __define_attr_accessor(qname) 138 138 name = XSD::CodeGen::GenSupport.safemethodname(qname.name) 139 Mapping.define_attr_accessor(self, name, 140 proc { self[qname] }, 141 proc { |value| self[qname] = value }) 139 getter = setter = nil 140 unless self.respond_to?(name) 141 getter = proc { self[qname] } 142 end 143 unless self.respond_to?(name + "=") 144 setter = proc { |value| self[qname] = value } 145 end 146 Mapping.define_attr_accessor(self, name, getter, setter) 142 147 end 143 148 else 144 149 def __define_attr_accessor(qname) 145 150 name = XSD::CodeGen::GenSupport.safemethodname(qname.name) 146 instance_eval <<-EOS 147 def #{name} 148 self[#{qname.dump}] 149 end 150 151 def #{name}=(value) 152 self[#{qname.dump}] = value 153 end 154 EOS 151 unless self.respond_to?(name) 152 instance_eval <<-EOS 153 def #{name} 154 self[#{qname.dump}] 155 end 156 EOS 157 end 158 unless self.respond_to?(name + "=") 159 instance_eval <<-EOS 160 def #{name}=(value) 161 self[#{qname.dump}] = value 162 end 163 EOS 164 end 155 165 end 156 166 end