class TurtleReader

Constants

NS
VERSION

Attributes

base[R]
file[RW]
map[R]
prefixes[R]
reader[R]

Public Class Methods

foreach(file, *args, &block) click to toggle source
   # File lib/turtle_reader.rb
51 def foreach(file, *args, &block)
52   open(file, *args) { |turtle| turtle.each(&block) }
53 end
new(reader, map = true) click to toggle source
   # File lib/turtle_reader.rb
57 def initialize(reader, map = true)
58   @reader, @base, @prefixes = reader, *reader.parse_prologue
59   self.map = map
60 end
open(file, *args) { |turtle| ... } click to toggle source
   # File lib/turtle_reader.rb
42 def open(file, *args)
43   RDF::Reader.open(file, format: :ttl) { |reader|
44     turtle = new(reader, *args)
45     turtle.file = File.expand_path(file)
46 
47     return block_given? ? yield(turtle) : turtle
48   }
49 end

Public Instance Methods

closed?() click to toggle source
    # File lib/turtle_reader.rb
107 def closed?
108   reader.closed?
109 end
each() { |s, o, k| ... } click to toggle source
    # File lib/turtle_reader.rb
 93 def each
 94   return enum_for(__method__) unless block_given?
 95 
 96   uri, map, base = RDF::URI, self.map, self.base
 97 
 98   each_statement { |t|
 99     s, p, o = *t
100 
101     if s.is_a?(uri) and k = map[p] and s.start_with?(base)
102       yield s, o, k
103     end
104   }
105 end
each_statement(&block) click to toggle source
   # File lib/turtle_reader.rb
87 def each_statement(&block)
88   return enum_for(__method__) unless block_given?
89   reader.parse_statements(&block)
90   self
91 end
inspect() click to toggle source
    # File lib/turtle_reader.rb
111 def inspect
112   '#<%s:0x%x @file=%p, @base=%p%s>' % [
113     self.class, object_id, file, base, closed? ? ' (closed)' : ''
114   ]
115 end
map=(map) click to toggle source
   # File lib/turtle_reader.rb
66 def map=(map)
67   unless map.is_a?(Hash)
68     @map = Hash.new(map)
69   else
70     @map = {}
71 
72     map.each { |k, v|
73       if k.is_a?(String)
74         n, s = k.split(':', 2)
75         k = NS.key?(n = n.to_sym) ? NS[n][s] : prefixes[n] / s
76       end
77 
78       @map[k] = v
79     }
80   end
81 end
statements() click to toggle source
   # File lib/turtle_reader.rb
83 def statements
84   each_statement.to_a
85 end