Sha256: 8dcdaf0a488d5c0e7deee0b5f0d0dbf20383a0410bb1a6193447ad026cb1895a
Contents?: true
Size: 1018 Bytes
Versions: 3
Compression:
Stored size: 1018 Bytes
Contents
class Sekken class XS class SchemaCollection include Enumerable def initialize @schemas = [] end def <<(schema) @schemas << schema end def push(schemas) @schemas += schemas end def each(&block) @schemas.each(&block) end def attribute(namespace, name) find_by_namespace(namespace).attributes[name] end def attribute_group(namespace, name) find_by_namespace(namespace).attribute_groups[name] end def element(namespace, name) find_by_namespace(namespace).elements[name] end def complex_type(namespace, name) find_by_namespace(namespace).complex_types[name] end def simple_type(namespace, name) find_by_namespace(namespace).simple_types[name] end # TODO: store by namespace instead? def find_by_namespace(namespace) find { |schema| schema.target_namespace == namespace } end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
sekken-0.3.0 | lib/sekken/xs/schema_collection.rb |
sekken-0.2.0 | lib/sekken/xs/schema_collection.rb |
sekken-0.1.0 | lib/sekken/xs/schema_collection.rb |