# File lib/rbvmomi/basic_types.rb, line 87 def initialize props={} @props = Hash[props.map { |k,v| [k.to_sym, v] }] self.class.full_props_desc.each do |desc| #fail "missing required property #{desc['name'].inspect} of #{self.class.wsdl_name}" if @props[desc['name'].to_sym].nil? and not desc['is-optional'] end @props.each do |k,v| fail "unexpected property name #{k}" unless self.class.find_prop_desc(k) end end