Sha256: 1ccf4d4e980b310c379781259367479a53d41f559c56e02013002f167d6f3009

Contents?: true

Size: 802 Bytes

Versions: 57

Compression:

Stored size: 802 Bytes

Contents

require 'neo4j/core/node'
require 'neo4j/core/relationship'
require 'neo4j/core/path'

module Neo4j
  module Core
    class CypherSession
      class Result
        attr_reader :columns, :rows

        def initialize(columns, rows)
          @columns = columns.map(&:to_sym)
          @rows = rows
          @struct_class = Struct.new(:index, *@columns)
        end

        include Enumerable

        def each
          structs.each do |struct|
            yield struct
          end
        end

        def structs
          @structs ||= rows.each_with_index.map do |row, index|
            @struct_class.new(index, *row)
          end
        end

        def hashes
          @hashes ||= rows.map do |row|
            Hash[@columns.zip(row)]
          end
        end
      end
    end
  end
end

Version data entries

57 entries across 57 versions & 1 rubygems

Version Path
neo4j-core-9.0.0 lib/neo4j/core/cypher_session/result.rb
neo4j-core-9.0.0.alpha.1 lib/neo4j/core/cypher_session/result.rb
neo4j-core-8.1.4 lib/neo4j/core/cypher_session/result.rb
neo4j-core-8.1.3 lib/neo4j/core/cypher_session/result.rb
neo4j-core-8.1.2 lib/neo4j/core/cypher_session/result.rb
neo4j-core-8.1.1 lib/neo4j/core/cypher_session/result.rb
neo4j-core-8.1.0 lib/neo4j/core/cypher_session/result.rb
neo4j-core-8.0.4 lib/neo4j/core/cypher_session/result.rb
neo4j-core-8.0.3 lib/neo4j/core/cypher_session/result.rb
neo4j-core-8.0.2 lib/neo4j/core/cypher_session/result.rb
neo4j-core-8.0.1 lib/neo4j/core/cypher_session/result.rb
neo4j-core-7.2.4 lib/neo4j/core/cypher_session/result.rb
neo4j-core-8.0.0 lib/neo4j/core/cypher_session/result.rb
neo4j-core-7.2.3 lib/neo4j/core/cypher_session/result.rb
neo4j-core-7.2.2 lib/neo4j/core/cypher_session/result.rb
neo4j-core-7.2.1 lib/neo4j/core/cypher_session/result.rb
neo4j-core-7.2.0 lib/neo4j/core/cypher_session/result.rb
neo4j-core-7.1.2 lib/neo4j/core/cypher_session/result.rb
neo4j-core-7.0.9 lib/neo4j/core/cypher_session/result.rb
neo4j-core-7.1.1 lib/neo4j/core/cypher_session/result.rb