lib/rdf/json/reader.rb in rdf-json-0.1.1 vs lib/rdf/json/reader.rb in rdf-json-0.2.0

- old
+ new

@@ -74,12 +74,12 @@ # Parses an RDF/JSON predicate string into a URI reference. # # @param [String] predicate # @return [RDF::URI] def parse_predicate(predicate) - # TODO: support for CURIE predicates (issue #1 on GitHub). - parse_subject(predicate) + # TODO: optional support for CURIE predicates (issue #1 on GitHub). + RDF::URI.intern(predicate) end ## # Parses an RDF/JSON object string into an RDF value. # @@ -103,27 +103,27 @@ raise RDF::ReaderError, "expected 'type' to be 'bnode', 'uri', or 'literal', but got #{type.inspect}" end end ## - # Iterates the given block for each RDF statement in the input. - # - # @yield [statement] - # @yieldparam [RDF::Statement] statement - # @return [void] + # @private + # @see RDF::Reader#each_graph + # @since 0.2.0 + def each_graph(&block) + block_given? ? @block.call(@graph) : enum_for(:each_graph).extend(RDF::Countable) + end + + ## + # @private + # @see RDF::Reader#each_statement def each_statement(&block) - @graph.each_statement(&block) + block_given? ? @graph.each_statement(&block) : enum_for(:each_statement).extend(RDF::Countable) end ## - # Iterates the given block for each RDF triple in the input. - # - # @yield [subject, predicate, object] - # @yieldparam [RDF::Resource] subject - # @yieldparam [RDF::URI] predicate - # @yieldparam [RDF::Value] object - # @return [void] + # @private + # @see RDF::Reader#each_statement def each_triple(&block) - @graph.each_triple(&block) + block_given? ? @graph.each_triple(&block) : enum_for(:each_triple).extend(RDF::Countable) end end # class Reader end # module RDF::JSON