The structure below looks rather weird, but is optimized for performance.
We could use sub calls for sure, but these are much slower. And the logic is not that easy:
we accept: a) objects b) scalars c) list refs d) hash refs e) mixed stuff of all of the above, so we have to set our element to a) value if it's an object b) New object of expected class with value for simple values c 1) New object with value for list values and list type c 2) List ref of new objects with value for list values and non-list type c + e 1) List ref of objects for list values (list of objects) and non-list type c + e 2) List ref of new objects for list values (list of hashes) and non-list type where the hash ref is passed to new as argument d) New object with values passed to new for HASH references We throw an error on a) list refs of list refs - don't know what to do with this (maybe use for lists of list types ?) b) wrong object types c) non-blessed non-ARRAY/HASH references - if you can define semantics for GLOB references, feel free to add them. d) we should also die for non-blessed non-ARRAY/HASH references in lists but don't do yet - oh my !
SOAP::WSDL::XSD::Typelib::ComplexType - complexType base class
Incomplete API
Not all variants of XML Schema ComplexType definitions are supported yet.
Variants known to work are:
sequence all complexContent containing sequence/all definitions
Thread safety
SOAP::WSDL::XSD::Typelib::Builtin uses Class::Std::Storable which uses Class::Std. Class::Std is not thread safe, so SOAP::WSDL::XSD::Typelib::Builtin is neither.
XML Schema facets
No facets are implemented yet.
Replace whitespace by @ in e-mail address.
Martin Kutter E<gt>martin.kutter fen-net.deE<lt>
This library is free software, you may distribute/modify it under the same terms as perl itself
To install SOAP::WSDL, copy and paste the appropriate command in to your terminal.
cpanm
cpanm SOAP::WSDL
CPAN shell
perl -MCPAN -e shell install SOAP::WSDL
For more information on module installation, please visit the detailed CPAN module installation guide.