~ubuntu-branches/debian/sid/redland-bindings/sid

« back to all changes in this revision

Viewing changes to docs/rdoc/classes/Redland/NodeIterator.html

  • Committer: Package Import Robot
  • Author(s): Dave Beckett
  • Date: 2013-01-22 16:03:44 UTC
  • mfrom: (0.1.10)
  • Revision ID: package-import@ubuntu.com-20130122160344-vxrnfl0xynfzbze7
Tags: 1.0.16.1-1
* New upstream release
* Add dpkg-buildflags to configure for hardening

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<?xml version="1.0" encoding="utf-8"?>
2
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
 
<head>
6
 
<title>Redland RDF Application Framework - Ruby RDoc - Class: Redland::NodeIterator</title>
7
 
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
8
 
<script type="text/javascript">
9
 
  // <![CDATA[
10
 
 
11
 
  function popupCode( url ) {
12
 
    window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
13
 
  }
14
 
 
15
 
  function toggleCode( id ) {
16
 
    if ( document.getElementById )
17
 
      elem = document.getElementById( id );
18
 
    else if ( document.all )
19
 
      elem = eval( "document.all." + id );
20
 
    else
21
 
      return false;
22
 
 
23
 
    elemStyle = elem.style;
24
 
    
25
 
    if ( elemStyle.display != "block" ) {
26
 
      elemStyle.display = "block"
27
 
    } else {
28
 
      elemStyle.display = "none"
29
 
    }
30
 
 
31
 
    return true;
32
 
  }
33
 
  
34
 
  // Make codeblocks hidden by default
35
 
  document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }<\/style>" )
36
 
  
37
 
  // ]]>
38
 
</script>
39
 
</head>
40
 
<body>
41
 
<div class="outerBlock">
42
 
 
43
 
<div class="outerHeader">
44
 
Go to <a href="/" target="_parent">Redland Home</a> - 
45
 
<a href="/bindings/" target="_parent">Language Bindings Home</a> - 
46
 
<a href="/docs/ruby.html" target="_parent">Ruby API Home</a>
47
 
</div>
48
 
 
49
 
<div id="classHeader">
50
 
<table class="header-table">
51
 
<tr class="top-aligned-row">
52
 
<td><strong>Class</strong></td>
53
 
<td class="class-name-in-header">Redland::NodeIterator</td>
54
 
</tr>
55
 
<tr class="top-aligned-row">
56
 
<td><strong>In:</strong></td>
57
 
<td><a href="../../files/rdf/redland/stream_rb.html">rdf/redland/stream.rb</a><br /></td>
58
 
</tr>
59
 
<tr class="top-aligned-row">
60
 
<td><strong>Parent:</strong></td>
61
 
<td>Object</td>
62
 
</tr>
63
 
</table>
64
 
</div>
65
 
<!-- banner header -->
66
 
<div id="bodyContent">
67
 
<div id="contextContent">
68
 
<div id="description">
69
 
<p>The iterator provides a generic way to receive a sequence of values (order may or may not be import) from objects, usually generated on demand.</p>
70
 
</div>
71
 
</div>
72
 
<div id="method-list">
73
 
<h3 class="section-bar">Methods</h3>
74
 
<div class="name-list"><a href="#M000154">create_finalizer</a>&nbsp;&nbsp; <a href="#M000152">current</a>&nbsp;&nbsp; <a href="#M000151">end?</a>&nbsp;&nbsp; <a href="#M000150">new</a>&nbsp;&nbsp; <a href="#M000153">next</a>&nbsp;&nbsp;</div>
75
 
</div>
76
 
</div>
77
 
<!-- if includes -->
78
 
<div id="includes">
79
 
<h3 class="section-bar">Included Modules</h3>
80
 
<div id="includes-list"><span class="include-name"><a href="Util.html">Util</a></span></div>
81
 
</div>
82
 
<div id="section"><!-- if method_list -->
83
 
<div id="methods">
84
 
<h3 class="section-bar">Public Class methods</h3>
85
 
<div id="method-M000154" class="method-detail"><a name="M000154" id="M000154"></a>
86
 
<div class="method-heading"><a href="#M000154" class="method-signature"><span class="method-name">create_finalizer</span><span class="method-args">(iterator)</span></a></div>
87
 
<div class="method-description">
88
 
<p>You shouldn&lsquo;t use this. Used internally for cleanup.</p>
89
 
<p><a class="source-toggle" href="#" onclick="toggleCode('M000154-source');return false;">[Source]</a></p>
90
 
<div class="method-source-code" id="M000154-source">
91
 
<pre>
92
 
<span class="ruby-comment cmt"># File rdf/redland/stream.rb, line 114</span>
93
 
    <span class="ruby-keyword kw">def</span> <span class="ruby-constant">NodeIterator</span>.<span class="ruby-identifier">create_finalizer</span>(<span class="ruby-identifier">iterator</span>)
94
 
      <span class="ruby-identifier">proc</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">id</span><span class="ruby-operator">|</span> <span class="ruby-node">"Finalizer on #{id}"</span>
95
 
        <span class="ruby-comment cmt">#puts "closing iterator"</span>
96
 
        <span class="ruby-constant">Redland</span><span class="ruby-operator">::</span><span class="ruby-identifier">librdf_free_iterator</span>(<span class="ruby-identifier">iterator</span>)
97
 
      }
98
 
    <span class="ruby-keyword kw">end</span>
99
 
</pre></div>
100
 
</div>
101
 
</div>
102
 
<div id="method-M000150" class="method-detail"><a name="M000150" id="M000150"></a>
103
 
<div class="method-heading"><a href="#M000150" class="method-signature"><span class="method-name">new</span><span class="method-args">(object,model=nil,creator2=nil,creator3=nil)</span></a></div>
104
 
<div class="method-description">
105
 
<p><a class="source-toggle" href="#" onclick="toggleCode('M000150-source');return false;">[Source]</a></p>
106
 
<div class="method-source-code" id="M000150-source">
107
 
<pre>
108
 
<span class="ruby-comment cmt"># File rdf/redland/stream.rb, line 82</span>
109
 
    <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">object</span>,<span class="ruby-identifier">model</span>=<span class="ruby-keyword kw">nil</span>,<span class="ruby-identifier">creator2</span>=<span class="ruby-keyword kw">nil</span>,<span class="ruby-identifier">creator3</span>=<span class="ruby-keyword kw">nil</span>)
110
 
      <span class="ruby-ivar">@iterator</span> = <span class="ruby-identifier">object</span>
111
 
      <span class="ruby-ivar">@model</span> = <span class="ruby-identifier">model</span>
112
 
      <span class="ruby-ivar">@creator2</span> = <span class="ruby-identifier">creator2</span>
113
 
      <span class="ruby-ivar">@creator3</span> = <span class="ruby-identifier">creator3</span>
114
 
      
115
 
      <span class="ruby-comment cmt"># Test if the iterator has finished</span>
116
 
      <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">end?</span>()
117
 
        <span class="ruby-keyword kw">return</span> (<span class="ruby-constant">Redland</span>.<span class="ruby-identifier">librdf_iterator_end</span>(<span class="ruby-ivar">@iterator</span>) <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>)
118
 
      <span class="ruby-keyword kw">end</span>
119
 
 
120
 
      <span class="ruby-comment cmt"># Get the current object from the iterator</span>
121
 
      <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">current</span>
122
 
        <span class="ruby-identifier">my_node</span> = <span class="ruby-constant">Redland</span>.<span class="ruby-identifier">librdf_iterator_get_object</span>(<span class="ruby-ivar">@iterator</span>)
123
 
        <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">my_node</span> <span class="ruby-operator">==</span> <span class="ruby-value str">"NULL"</span> <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">my_node</span> <span class="ruby-operator">==</span> <span class="ruby-keyword kw">nil</span>
124
 
          <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span>
125
 
        <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">is_literal?</span>(<span class="ruby-identifier">my_node</span>)
126
 
          <span class="ruby-keyword kw">return</span> <span class="ruby-constant">Literal</span>.<span class="ruby-identifier">from_node</span>(<span class="ruby-identifier">my_node</span>)
127
 
        <span class="ruby-keyword kw">else</span>
128
 
          <span class="ruby-keyword kw">return</span> <span class="ruby-constant">Resource</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">my_node</span>,<span class="ruby-ivar">@model</span>)
129
 
        <span class="ruby-keyword kw">end</span>
130
 
      <span class="ruby-keyword kw">end</span>
131
 
 
132
 
      <span class="ruby-comment cmt"># Move to the next iterator element</span>
133
 
      <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">next</span>()
134
 
        <span class="ruby-identifier">my_node</span>=<span class="ruby-constant">Redland</span>.<span class="ruby-identifier">librdf_iterator_next</span>(<span class="ruby-ivar">@iterator</span>)
135
 
      <span class="ruby-keyword kw">end</span>
136
 
 
137
 
      <span class="ruby-constant">ObjectSpace</span>.<span class="ruby-identifier">define_finalizer</span>(<span class="ruby-keyword kw">self</span>,<span class="ruby-constant">NodeIterator</span>.<span class="ruby-identifier">create_finalizer</span>(<span class="ruby-ivar">@iterator</span>))
138
 
    <span class="ruby-keyword kw">end</span>
139
 
</pre></div>
140
 
</div>
141
 
</div>
142
 
<h3 class="section-bar">Public Instance methods</h3>
143
 
<div id="method-M000152" class="method-detail"><a name="M000152" id="M000152"></a>
144
 
<div class="method-heading"><a href="#M000152" class="method-signature"><span class="method-name">current</span><span class="method-args">()</span></a></div>
145
 
<div class="method-description">
146
 
<p>Get the <a href="NodeIterator.html#M000152">current</a> object from the iterator</p>
147
 
<p><a class="source-toggle" href="#" onclick="toggleCode('M000152-source');return false;">[Source]</a></p>
148
 
<div class="method-source-code" id="M000152-source">
149
 
<pre>
150
 
<span class="ruby-comment cmt"># File rdf/redland/stream.rb, line 94</span>
151
 
      <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">current</span>
152
 
        <span class="ruby-identifier">my_node</span> = <span class="ruby-constant">Redland</span>.<span class="ruby-identifier">librdf_iterator_get_object</span>(<span class="ruby-ivar">@iterator</span>)
153
 
        <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">my_node</span> <span class="ruby-operator">==</span> <span class="ruby-value str">"NULL"</span> <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">my_node</span> <span class="ruby-operator">==</span> <span class="ruby-keyword kw">nil</span>
154
 
          <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span>
155
 
        <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">is_literal?</span>(<span class="ruby-identifier">my_node</span>)
156
 
          <span class="ruby-keyword kw">return</span> <span class="ruby-constant">Literal</span>.<span class="ruby-identifier">from_node</span>(<span class="ruby-identifier">my_node</span>)
157
 
        <span class="ruby-keyword kw">else</span>
158
 
          <span class="ruby-keyword kw">return</span> <span class="ruby-constant">Resource</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">my_node</span>,<span class="ruby-ivar">@model</span>)
159
 
        <span class="ruby-keyword kw">end</span>
160
 
      <span class="ruby-keyword kw">end</span>
161
 
</pre></div>
162
 
</div>
163
 
</div>
164
 
<div id="method-M000151" class="method-detail"><a name="M000151" id="M000151"></a>
165
 
<div class="method-heading"><a href="#M000151" class="method-signature"><span class="method-name">end?</span><span class="method-args">()</span></a></div>
166
 
<div class="method-description">
167
 
<p>Test if the iterator has finished</p>
168
 
<p><a class="source-toggle" href="#" onclick="toggleCode('M000151-source');return false;">[Source]</a></p>
169
 
<div class="method-source-code" id="M000151-source">
170
 
<pre>
171
 
<span class="ruby-comment cmt"># File rdf/redland/stream.rb, line 89</span>
172
 
      <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">end?</span>()
173
 
        <span class="ruby-keyword kw">return</span> (<span class="ruby-constant">Redland</span>.<span class="ruby-identifier">librdf_iterator_end</span>(<span class="ruby-ivar">@iterator</span>) <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>)
174
 
      <span class="ruby-keyword kw">end</span>
175
 
</pre></div>
176
 
</div>
177
 
</div>
178
 
<div id="method-M000153" class="method-detail"><a name="M000153" id="M000153"></a>
179
 
<div class="method-heading"><a href="#M000153" class="method-signature"><span class="method-name">next</span><span class="method-args">()</span></a></div>
180
 
<div class="method-description">
181
 
<p>Move to the <a href="NodeIterator.html#M000153">next</a> iterator element</p>
182
 
<p><a class="source-toggle" href="#" onclick="toggleCode('M000153-source');return false;">[Source]</a></p>
183
 
<div class="method-source-code" id="M000153-source">
184
 
<pre>
185
 
<span class="ruby-comment cmt"># File rdf/redland/stream.rb, line 106</span>
186
 
      <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">next</span>()
187
 
        <span class="ruby-identifier">my_node</span>=<span class="ruby-constant">Redland</span>.<span class="ruby-identifier">librdf_iterator_next</span>(<span class="ruby-ivar">@iterator</span>)
188
 
      <span class="ruby-keyword kw">end</span>
189
 
</pre></div>
190
 
</div>
191
 
</div>
192
 
</div>
193
 
</div>
194
 
<hr />
195
 
 
196
 
<div class="outerHeader">
197
 
Go to <a href="/" target="_parent">Redland Home</a> - 
198
 
<a href="/bindings/" target="_parent">Language Bindings Home</a> - 
199
 
<a href="/docs/ruby.html" target="_parent">Ruby API Home</a>
200
 
</div>
201
 
 
202
 
<p>(C) Copyright 2004-2011 <a href="http://www.dajobe.org/" target="_parent">Dave Beckett</a>, (C) Copyright 2004-2005 <a href="http://www.bristol.ac.uk/" target="_parent">University of Bristol</a></p>
203
 
 
204
 
</div> <!-- end outerBlock -->
205
 
 
206
 
</body>
207
 
</html>