yax 0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/yax-0.1/docs/classes/IO.html +251 -0
- data/yax-0.1/docs/classes/IO.src/M000003.html +46 -0
- data/yax-0.1/docs/classes/IO.src/M000004.html +27 -0
- data/yax-0.1/docs/classes/Module.html +156 -0
- data/yax-0.1/docs/classes/Module.src/M000002.html +23 -0
- data/yax-0.1/docs/classes/MultiIO.html +217 -0
- data/yax-0.1/docs/classes/MultiIO.src/M000006.html +18 -0
- data/yax-0.1/docs/classes/MultiIO.src/M000007.html +19 -0
- data/yax-0.1/docs/classes/MultiIO.src/M000008.html +20 -0
- data/yax-0.1/docs/classes/Numeric.html +155 -0
- data/yax-0.1/docs/classes/Numeric.src/M000005.html +16 -0
- data/yax-0.1/docs/classes/Regexp.html +153 -0
- data/yax-0.1/docs/classes/Regexp.src/M000001.html +16 -0
- data/yax-0.1/docs/classes/String.html +270 -0
- data/yax-0.1/docs/classes/String.src/M000009.html +18 -0
- data/yax-0.1/docs/classes/String.src/M000010.html +16 -0
- data/yax-0.1/docs/classes/String.src/M000011.html +22 -0
- data/yax-0.1/docs/classes/String.src/M000012.html +27 -0
- data/yax-0.1/docs/classes/String.src/M000013.html +21 -0
- data/yax-0.1/docs/classes/String.src/M000014.html +20 -0
- data/yax-0.1/docs/classes/Yax.html +256 -0
- data/yax-0.1/docs/classes/Yax.src/M000015.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.html +1661 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000016.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000017.html +18 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000018.html +19 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000019.html +19 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000020.html +19 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000021.html +46 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000022.html +19 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000023.html +18 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000024.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000025.html +18 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000026.html +19 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000027.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000028.html +18 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000029.html +18 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000030.html +19 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000031.html +25 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000032.html +18 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000033.html +36 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000034.html +34 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000035.html +23 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000036.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000037.html +32 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000038.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000042.html +18 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000043.html +18 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000044.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000046.html +37 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000047.html +29 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000048.html +29 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000049.html +30 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000050.html +22 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000051.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000052.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000053.html +19 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000054.html +28 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000055.html +21 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000056.html +27 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000057.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000058.html +22 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000059.html +21 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000060.html +21 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000061.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000062.html +21 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000063.html +20 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000064.html +21 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000065.html +26 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000066.html +25 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000067.html +29 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000068.html +26 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000069.html +19 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000070.html +31 -0
- data/yax-0.1/docs/classes/Yax/Session.src/M000071.html +25 -0
- data/yax-0.1/docs/created.rid +1 -0
- data/yax-0.1/docs/dot/f_0.dot +14 -0
- data/yax-0.1/docs/dot/f_0.png +0 -0
- data/yax-0.1/docs/dot/f_1.dot +14 -0
- data/yax-0.1/docs/dot/f_1.png +0 -0
- data/yax-0.1/docs/dot/f_2.dot +14 -0
- data/yax-0.1/docs/dot/f_2.png +0 -0
- data/yax-0.1/docs/dot/f_3.dot +93 -0
- data/yax-0.1/docs/dot/f_3.png +0 -0
- data/yax-0.1/docs/dot/m_3_0.dot +39 -0
- data/yax-0.1/docs/dot/m_3_0.png +0 -0
- data/yax-0.1/docs/files/License_txt.html +124 -0
- data/yax-0.1/docs/files/ReadMe_Amber_txt.html +489 -0
- data/yax-0.1/docs/files/ReadMe_txt.html +444 -0
- data/yax-0.1/docs/files/nist/yax_rb.html +138 -0
- data/yax-0.1/docs/fr_class_index.html +34 -0
- data/yax-0.1/docs/fr_file_index.html +30 -0
- data/yax-0.1/docs/fr_method_index.html +97 -0
- data/yax-0.1/docs/index.html +24 -0
- data/yax-0.1/docs/rdoc-style.css +208 -0
- data/yax-0.1/lib/nist/yax.rb +1367 -0
- data/yax-0.1/tests/test_yax.rb +190 -0
- metadata +195 -0
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
7
|
+
<head>
|
|
8
|
+
<title>Class: IO</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
11
|
+
<link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
|
|
12
|
+
<script type="text/javascript">
|
|
13
|
+
// <![CDATA[
|
|
14
|
+
|
|
15
|
+
function popupCode( url ) {
|
|
16
|
+
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function toggleCode( id ) {
|
|
20
|
+
if ( document.getElementById )
|
|
21
|
+
elem = document.getElementById( id );
|
|
22
|
+
else if ( document.all )
|
|
23
|
+
elem = eval( "document.all." + id );
|
|
24
|
+
else
|
|
25
|
+
return false;
|
|
26
|
+
|
|
27
|
+
elemStyle = elem.style;
|
|
28
|
+
|
|
29
|
+
if ( elemStyle.display != "block" ) {
|
|
30
|
+
elemStyle.display = "block"
|
|
31
|
+
} else {
|
|
32
|
+
elemStyle.display = "none"
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Make codeblocks hidden by default
|
|
39
|
+
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
|
|
40
|
+
|
|
41
|
+
// ]]>
|
|
42
|
+
</script>
|
|
43
|
+
|
|
44
|
+
</head>
|
|
45
|
+
<body>
|
|
46
|
+
|
|
47
|
+
|
|
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">IO</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../files/nist/yax_rb.html">
|
|
59
|
+
nist/yax.rb
|
|
60
|
+
</a>
|
|
61
|
+
<br />
|
|
62
|
+
</td>
|
|
63
|
+
</tr>
|
|
64
|
+
|
|
65
|
+
<tr class="top-aligned-row">
|
|
66
|
+
<td><strong>Parent:</strong></td>
|
|
67
|
+
<td>
|
|
68
|
+
Object
|
|
69
|
+
</td>
|
|
70
|
+
</tr>
|
|
71
|
+
</table>
|
|
72
|
+
</div>
|
|
73
|
+
<!-- banner header -->
|
|
74
|
+
|
|
75
|
+
<div id="bodyContent">
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
<div id="contextContent">
|
|
80
|
+
<div id="diagram">
|
|
81
|
+
<map id="map" name="map">
|
|
82
|
+
<area shape="RECT" coords="29,52,101,100" href="Yax/Session.html" alt="Session">
|
|
83
|
+
<area shape="RECT" coords="152,52,224,100" href="Regexp.html" alt="Regexp">
|
|
84
|
+
<area shape="RECT" coords="248,52,320,100" href="Module.html" alt="Module">
|
|
85
|
+
<area shape="RECT" coords="344,52,416,100" href="IO.html" alt="IO">
|
|
86
|
+
<area shape="RECT" coords="440,52,512,100" href="Numeric.html" alt="Numeric">
|
|
87
|
+
<area shape="RECT" coords="536,52,608,100" href="MultiIO.html" alt="MultiIO">
|
|
88
|
+
<area shape="RECT" coords="632,52,704,100" href="String.html" alt="String">
|
|
89
|
+
<area shape="RECT" coords="18,18,138,110" href="Yax.html" alt="Yax">
|
|
90
|
+
</map>
|
|
91
|
+
<img src="../dot/f_3.png" usemap="#map" border=0 alt="TopLevel">
|
|
92
|
+
</div>
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
</div>
|
|
97
|
+
|
|
98
|
+
<div id="method-list">
|
|
99
|
+
<h3 class="section-bar">Methods</h3>
|
|
100
|
+
|
|
101
|
+
<div class="name-list">
|
|
102
|
+
<a href="#M000004">multi_expect</a>
|
|
103
|
+
<a href="#M000003">single_expect</a>
|
|
104
|
+
</div>
|
|
105
|
+
</div>
|
|
106
|
+
|
|
107
|
+
</div>
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
<!-- if includes -->
|
|
111
|
+
|
|
112
|
+
<div id="section">
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
<!-- if method_list -->
|
|
122
|
+
<div id="methods">
|
|
123
|
+
<h3 class="section-bar">Public Instance methods</h3>
|
|
124
|
+
|
|
125
|
+
<div id="method-M000004" class="method-detail">
|
|
126
|
+
<a name="M000004"></a>
|
|
127
|
+
|
|
128
|
+
<div class="method-heading">
|
|
129
|
+
<a href="IO.src/M000004.html" target="Code" class="method-signature"
|
|
130
|
+
onclick="popupCode('IO.src/M000004.html');return false;">
|
|
131
|
+
<span class="method-name">multi_expect</span><span class="method-args">(hash, maxSeconds, buf='', workAround=false, logger=nil, truncSize=1024, maxSize=1024*64)</span>
|
|
132
|
+
</a>
|
|
133
|
+
</div>
|
|
134
|
+
|
|
135
|
+
<div class="method-description">
|
|
136
|
+
<p>
|
|
137
|
+
Similar to <a href="IO.html#M000003">single_expect</a>, but:
|
|
138
|
+
</p>
|
|
139
|
+
<ul>
|
|
140
|
+
<li>can not take a block
|
|
141
|
+
|
|
142
|
+
</li>
|
|
143
|
+
<li>takes a Hash instead of a single pattern.
|
|
144
|
+
|
|
145
|
+
</li>
|
|
146
|
+
<li>can limit the buffer size
|
|
147
|
+
|
|
148
|
+
</li>
|
|
149
|
+
<li>can log the output
|
|
150
|
+
|
|
151
|
+
</li>
|
|
152
|
+
</ul>
|
|
153
|
+
<p>
|
|
154
|
+
The hash has:
|
|
155
|
+
</p>
|
|
156
|
+
<pre>
|
|
157
|
+
[keys] Identify the pattern (a Symbol is suggested)
|
|
158
|
+
[values] Strings or patterns to be matched.
|
|
159
|
+
</pre>
|
|
160
|
+
<p>
|
|
161
|
+
If truncSize is nil, the buffer grows continuously. If truncSize is not
|
|
162
|
+
nil, the buffer is allowed to grow up to maxSize, whereupon it is truncated
|
|
163
|
+
to the most recent truncSize characters. Don‘t use this feature if
|
|
164
|
+
the caller expects buf only to grow.
|
|
165
|
+
</p>
|
|
166
|
+
<p>
|
|
167
|
+
If logger is non-nil, it must respond to log_output(string). This method is
|
|
168
|
+
called for each line. It will be called with a nil argument if <a
|
|
169
|
+
href="IO.html#M000004">multi_expect</a> receives a \n when there are no
|
|
170
|
+
characters in the buffer after the last \n.
|
|
171
|
+
</p>
|
|
172
|
+
<p>
|
|
173
|
+
Returns nil if no match occured, or an Array if there was a match:
|
|
174
|
+
</p>
|
|
175
|
+
<pre>
|
|
176
|
+
result[0]=key for pattern that matched
|
|
177
|
+
result[1]=match result
|
|
178
|
+
</pre>
|
|
179
|
+
</div>
|
|
180
|
+
</div>
|
|
181
|
+
|
|
182
|
+
<div id="method-M000003" class="method-detail">
|
|
183
|
+
<a name="M000003"></a>
|
|
184
|
+
|
|
185
|
+
<div class="method-heading">
|
|
186
|
+
<a href="IO.src/M000003.html" target="Code" class="method-signature"
|
|
187
|
+
onclick="popupCode('IO.src/M000003.html');return false;">
|
|
188
|
+
<span class="method-name">single_expect</span><span class="method-args">(pat, timeout, buf='', workAround=false) {|result if block_given?| ...}</span>
|
|
189
|
+
</a>
|
|
190
|
+
</div>
|
|
191
|
+
|
|
192
|
+
<div class="method-description">
|
|
193
|
+
<p>
|
|
194
|
+
A modified version of expect that
|
|
195
|
+
</p>
|
|
196
|
+
<ul>
|
|
197
|
+
<li>can take an externally specified buffer.
|
|
198
|
+
|
|
199
|
+
</li>
|
|
200
|
+
<li>checks to see if the buffer already matches the pattern
|
|
201
|
+
|
|
202
|
+
</li>
|
|
203
|
+
<li>can work around an OS X idiosyncrasy.
|
|
204
|
+
|
|
205
|
+
</li>
|
|
206
|
+
</ul>
|
|
207
|
+
<p>
|
|
208
|
+
The buffer must be a <a href="String.html">String</a> (although the caller
|
|
209
|
+
can hold onto a StringIO wrapping this <a href="String.html">String</a>).
|
|
210
|
+
This method returns nil if a timeout occured, or the match results if a
|
|
211
|
+
match occured. Can also take an optional one-argument result-processing
|
|
212
|
+
block, in which case the block results are returned.
|
|
213
|
+
</p>
|
|
214
|
+
<p>
|
|
215
|
+
When you set workAround=true,
|
|
216
|
+
</p>
|
|
217
|
+
<ul>
|
|
218
|
+
<li>\r\n is treated like \n
|
|
219
|
+
|
|
220
|
+
</li>
|
|
221
|
+
<li>\r not immediately followed by \n deletes the preceeding character.
|
|
222
|
+
|
|
223
|
+
</li>
|
|
224
|
+
</ul>
|
|
225
|
+
<p>
|
|
226
|
+
This is an attempt to compensate for the odd "\r" character
|
|
227
|
+
behavior which occurs for PDY stdout under OS X (and, for all I know, other
|
|
228
|
+
platforms as well). Here is an example of about 5 extra \r characters:
|
|
229
|
+
</p>
|
|
230
|
+
<pre>
|
|
231
|
+
Yax::Session.expect timed out under current_command
|
|
232
|
+
'"cd /Users/griesser/Documents/Code/DevRoot/Projects/guiStackOSX/temp/Build/TigerFix"'
|
|
233
|
+
while waiting for /griesser[$#] /, buffer is:
|
|
234
|
+
<<"cd / \rUsers/griesser/Documents/Code/DevRoot/Projects/guiStackOSX/temp/Build/TigerFix 2 \r>/Users/griesser/Documents/Code/DevRoot/Projects/guiStackOSX/temp/test_results/e \rrrorLog.txt\r\nSplendid:~/Documents/Code/DevRoot/Projects/guiStackOSX/temp/Build/TigerFix griess\rser$ ">>
|
|
235
|
+
</pre>
|
|
236
|
+
</div>
|
|
237
|
+
</div>
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
</div>
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
</div>
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
<div id="validator-badges">
|
|
247
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
248
|
+
</div>
|
|
249
|
+
|
|
250
|
+
</body>
|
|
251
|
+
</html>
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>single_expect (IO)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
12
|
+
<body class="standalone-code">
|
|
13
|
+
<pre><span class="ruby-comment cmt"># File nist/yax.rb, line 99</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">single_expect</span>(<span class="ruby-identifier">pat</span>, <span class="ruby-identifier">timeout</span>, <span class="ruby-identifier">buf</span>=<span class="ruby-value str">''</span>, <span class="ruby-identifier">workAround</span>=<span class="ruby-keyword kw">false</span>)
|
|
15
|
+
<span class="ruby-identifier">e_pat</span> = <span class="ruby-identifier">pat</span>.<span class="ruby-identifier">to_regexp</span>
|
|
16
|
+
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">buf</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-value">? </span><span class="ruby-keyword kw">nil</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">e_pat</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">buf</span>)
|
|
17
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">result</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">result</span>
|
|
18
|
+
<span class="ruby-identifier">last_char_was_return</span> = <span class="ruby-keyword kw">false</span>
|
|
19
|
+
<span class="ruby-keyword kw">while</span> <span class="ruby-keyword kw">true</span>
|
|
20
|
+
<span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-constant">IO</span>.<span class="ruby-identifier">select</span>([<span class="ruby-keyword kw">self</span>],<span class="ruby-keyword kw">nil</span>,<span class="ruby-keyword kw">nil</span>,<span class="ruby-identifier">timeout</span>)
|
|
21
|
+
<span class="ruby-identifier">c</span> = <span class="ruby-identifier">getc</span>
|
|
22
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">c</span> <span class="ruby-comment cmt"># We hit the end of the file without a match.</span>
|
|
23
|
+
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">workAround</span>
|
|
24
|
+
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">c</span>
|
|
25
|
+
<span class="ruby-keyword kw">when</span> <span class="ruby-value">?\r</span>
|
|
26
|
+
<span class="ruby-comment cmt"># remember we enountered \r</span>
|
|
27
|
+
<span class="ruby-identifier">last_char_was_return</span>=<span class="ruby-keyword kw">true</span>
|
|
28
|
+
<span class="ruby-comment cmt"># do not process the \r</span>
|
|
29
|
+
<span class="ruby-keyword kw">next</span>
|
|
30
|
+
<span class="ruby-keyword kw">when</span> <span class="ruby-value">?\n</span>
|
|
31
|
+
<span class="ruby-comment cmt"># just ignore the last \r, process \n</span>
|
|
32
|
+
<span class="ruby-keyword kw">else</span>
|
|
33
|
+
<span class="ruby-comment cmt"># strip off the char before the \r</span>
|
|
34
|
+
<span class="ruby-identifier">buf</span>.<span class="ruby-identifier">chop!</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">last_char_was_return</span>
|
|
35
|
+
<span class="ruby-keyword kw">end</span>
|
|
36
|
+
<span class="ruby-identifier">last_char_was_return</span>=<span class="ruby-keyword kw">false</span>
|
|
37
|
+
<span class="ruby-keyword kw">end</span>
|
|
38
|
+
<span class="ruby-identifier">buf</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">chr</span>
|
|
39
|
+
<span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">result</span>=<span class="ruby-identifier">e_pat</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">buf</span>)
|
|
40
|
+
<span class="ruby-keyword kw">end</span>
|
|
41
|
+
<span class="ruby-identifier">result</span> = <span class="ruby-keyword kw">yield</span> <span class="ruby-identifier">result</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">block_given?</span>
|
|
42
|
+
<span class="ruby-comment cmt"># STDOUT.log_expect('single_expect', pat, buf, result)</span>
|
|
43
|
+
<span class="ruby-identifier">result</span>
|
|
44
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
45
|
+
</body>
|
|
46
|
+
</html>
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>multi_expect (IO)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
12
|
+
<body class="standalone-code">
|
|
13
|
+
<pre><span class="ruby-comment cmt"># File nist/yax.rb, line 154</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">multi_expect</span>(<span class="ruby-identifier">hash</span>, <span class="ruby-identifier">maxSeconds</span>, <span class="ruby-identifier">buf</span>=<span class="ruby-value str">''</span>, <span class="ruby-identifier">workAround</span>=<span class="ruby-keyword kw">false</span>, <span class="ruby-identifier">logger</span>=<span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">truncSize</span>=<span class="ruby-value">1024</span>, <span class="ruby-identifier">maxSize</span>=<span class="ruby-value">1024</span><span class="ruby-operator">*</span><span class="ruby-value">64</span>)
|
|
15
|
+
<span class="ruby-identifier">result</span> = <span class="ruby-keyword kw">nil</span>
|
|
16
|
+
<span class="ruby-keyword kw">begin</span>
|
|
17
|
+
<span class="ruby-constant">Timeout</span><span class="ruby-operator">::</span><span class="ruby-identifier">timeout</span>(<span class="ruby-identifier">maxSeconds</span>) {
|
|
18
|
+
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">_multi_expect</span>(<span class="ruby-identifier">hash</span>, <span class="ruby-value">1</span>, <span class="ruby-identifier">buf</span>, <span class="ruby-identifier">workAround</span>, <span class="ruby-identifier">logger</span>, <span class="ruby-identifier">truncSize</span>, <span class="ruby-identifier">maxSize</span>)
|
|
19
|
+
}
|
|
20
|
+
<span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Timeout</span><span class="ruby-operator">::</span><span class="ruby-constant">Error</span>
|
|
21
|
+
<span class="ruby-comment cmt"># silently return nil</span>
|
|
22
|
+
<span class="ruby-keyword kw">end</span>
|
|
23
|
+
<span class="ruby-comment cmt"># STDOUT.log_expect('multi_expect', hash, buf, result)</span>
|
|
24
|
+
<span class="ruby-identifier">result</span>
|
|
25
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
26
|
+
</body>
|
|
27
|
+
</html>
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
7
|
+
<head>
|
|
8
|
+
<title>Class: Module</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
11
|
+
<link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
|
|
12
|
+
<script type="text/javascript">
|
|
13
|
+
// <![CDATA[
|
|
14
|
+
|
|
15
|
+
function popupCode( url ) {
|
|
16
|
+
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function toggleCode( id ) {
|
|
20
|
+
if ( document.getElementById )
|
|
21
|
+
elem = document.getElementById( id );
|
|
22
|
+
else if ( document.all )
|
|
23
|
+
elem = eval( "document.all." + id );
|
|
24
|
+
else
|
|
25
|
+
return false;
|
|
26
|
+
|
|
27
|
+
elemStyle = elem.style;
|
|
28
|
+
|
|
29
|
+
if ( elemStyle.display != "block" ) {
|
|
30
|
+
elemStyle.display = "block"
|
|
31
|
+
} else {
|
|
32
|
+
elemStyle.display = "none"
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Make codeblocks hidden by default
|
|
39
|
+
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
|
|
40
|
+
|
|
41
|
+
// ]]>
|
|
42
|
+
</script>
|
|
43
|
+
|
|
44
|
+
</head>
|
|
45
|
+
<body>
|
|
46
|
+
|
|
47
|
+
|
|
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">Module</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../files/nist/yax_rb.html">
|
|
59
|
+
nist/yax.rb
|
|
60
|
+
</a>
|
|
61
|
+
<br />
|
|
62
|
+
</td>
|
|
63
|
+
</tr>
|
|
64
|
+
|
|
65
|
+
<tr class="top-aligned-row">
|
|
66
|
+
<td><strong>Parent:</strong></td>
|
|
67
|
+
<td>
|
|
68
|
+
Object
|
|
69
|
+
</td>
|
|
70
|
+
</tr>
|
|
71
|
+
</table>
|
|
72
|
+
</div>
|
|
73
|
+
<!-- banner header -->
|
|
74
|
+
|
|
75
|
+
<div id="bodyContent">
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
<div id="contextContent">
|
|
80
|
+
<div id="diagram">
|
|
81
|
+
<map id="map" name="map">
|
|
82
|
+
<area shape="RECT" coords="29,52,101,100" href="Yax/Session.html" alt="Session">
|
|
83
|
+
<area shape="RECT" coords="152,52,224,100" href="Regexp.html" alt="Regexp">
|
|
84
|
+
<area shape="RECT" coords="248,52,320,100" href="Module.html" alt="Module">
|
|
85
|
+
<area shape="RECT" coords="344,52,416,100" href="IO.html" alt="IO">
|
|
86
|
+
<area shape="RECT" coords="440,52,512,100" href="Numeric.html" alt="Numeric">
|
|
87
|
+
<area shape="RECT" coords="536,52,608,100" href="MultiIO.html" alt="MultiIO">
|
|
88
|
+
<area shape="RECT" coords="632,52,704,100" href="String.html" alt="String">
|
|
89
|
+
<area shape="RECT" coords="18,18,138,110" href="Yax.html" alt="Yax">
|
|
90
|
+
</map>
|
|
91
|
+
<img src="../dot/f_3.png" usemap="#map" border=0 alt="TopLevel">
|
|
92
|
+
</div>
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
</div>
|
|
97
|
+
|
|
98
|
+
<div id="method-list">
|
|
99
|
+
<h3 class="section-bar">Methods</h3>
|
|
100
|
+
|
|
101
|
+
<div class="name-list">
|
|
102
|
+
<a href="#M000002">yaxify</a>
|
|
103
|
+
</div>
|
|
104
|
+
</div>
|
|
105
|
+
|
|
106
|
+
</div>
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
<!-- if includes -->
|
|
110
|
+
|
|
111
|
+
<div id="section">
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
<!-- if method_list -->
|
|
121
|
+
<div id="methods">
|
|
122
|
+
<h3 class="section-bar">Public Instance methods</h3>
|
|
123
|
+
|
|
124
|
+
<div id="method-M000002" class="method-detail">
|
|
125
|
+
<a name="M000002"></a>
|
|
126
|
+
|
|
127
|
+
<div class="method-heading">
|
|
128
|
+
<a href="Module.src/M000002.html" target="Code" class="method-signature"
|
|
129
|
+
onclick="popupCode('Module.src/M000002.html');return false;">
|
|
130
|
+
<span class="method-name">yaxify</span><span class="method-args">(*method_name_symbols)</span>
|
|
131
|
+
</a>
|
|
132
|
+
</div>
|
|
133
|
+
|
|
134
|
+
<div class="method-description">
|
|
135
|
+
<p>
|
|
136
|
+
Given an arbitrary number of arguments which are symbols corresponding to
|
|
137
|
+
<a href="Yax/Session.html">Yax::Session</a> instance method names,
|
|
138
|
+
generates a module method that invokes the behavior on an instance returned
|
|
139
|
+
by the yax module method.
|
|
140
|
+
</p>
|
|
141
|
+
</div>
|
|
142
|
+
</div>
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
</div>
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
</div>
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
<div id="validator-badges">
|
|
152
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
153
|
+
</div>
|
|
154
|
+
|
|
155
|
+
</body>
|
|
156
|
+
</html>
|