doc/TaskJuggler/KeywordDocumentation.html in taskjuggler-0.0.8 vs doc/TaskJuggler/KeywordDocumentation.html in taskjuggler-0.0.9
- old
+ new
@@ -153,10 +153,12 @@
<li><a href="../TaskJuggler/AttributeBase.html">TaskJuggler::AttributeBase</a></li>
<li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
+ <li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
+
<li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
<li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
<li><a href="../TaskJuggler/BookingListAttribute.html">TaskJuggler::BookingListAttribute</a></li>
@@ -231,10 +233,12 @@
<li><a href="../TaskJuggler/HTMLGraphics.html">TaskJuggler::HTMLGraphics</a></li>
<li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
+ <li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
+
<li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
<li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
<li><a href="../TaskJuggler/Journal.html">TaskJuggler::Journal</a></li>
@@ -263,10 +267,12 @@
<li><a href="../TaskJuggler/LogicalExpression.html">TaskJuggler::LogicalExpression</a></li>
<li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
+ <li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
+
<li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
<li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
<li><a href="../TaskJuggler/LogicalOperation.html">TaskJuggler::LogicalOperation</a></li>
@@ -543,10 +549,12 @@
<li><a href="../TaskJuggler/VimSyntax.html">TaskJuggler::VimSyntax</a></li>
<li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
+ <li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
+
<li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
<li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
<li><a href="../TaskJuggler/XMLBlob.html">TaskJuggler::XMLBlob</a></li>
@@ -569,12 +577,10 @@
<li><a href="../RuntimeConfig.html">RuntimeConfig</a></li>
<li><a href="../String.html">String</a></li>
- <li><a href="../StringIO.html">StringIO</a></li>
-
</ul>
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
</div>
@@ -824,42 +830,42 @@
<div class="method-source-code"
id="new-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 43</span>
-43: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">rule</span>, <span class="ruby-identifier">pattern</span>, <span class="ruby-identifier">syntax</span>, <span class="ruby-identifier">args</span>, <span class="ruby-identifier">optAttrPatterns</span>, <span class="ruby-identifier">manual</span>)
-44: <span class="ruby-ivar">@messageHandler</span> = <span class="ruby-constant">MessageHandler</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">true</span>)
-45: <span class="ruby-ivar">@rule</span> = <span class="ruby-identifier">rule</span>
-46: <span class="ruby-ivar">@pattern</span> = <span class="ruby-identifier">pattern</span>
-47: <span class="ruby-comment cmt"># The unique identifier. Usually the attribute or property name. To</span>
-48: <span class="ruby-comment cmt"># disambiguate a .<scope> can be added.</span>
-49: <span class="ruby-ivar">@keyword</span> = <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">keyword</span>
-50: <span class="ruby-comment cmt"># Similar to @keyword, but without the scope. Since there could be</span>
-51: <span class="ruby-comment cmt"># several, this is an Array of String objects.</span>
-52: <span class="ruby-ivar">@names</span> = []
-53: <span class="ruby-ivar">@syntax</span> = <span class="ruby-identifier">syntax</span>
-54: <span class="ruby-ivar">@args</span> = <span class="ruby-identifier">args</span>
-55: <span class="ruby-ivar">@manual</span> = <span class="ruby-identifier">manual</span>
-56: <span class="ruby-comment cmt"># Hash that maps patterns of optional attributes to a boolean value. It</span>
-57: <span class="ruby-comment cmt"># is true if the pattern is a scenario specific attribute.</span>
-58: <span class="ruby-ivar">@optAttrPatterns</span> = <span class="ruby-identifier">optAttrPatterns</span>
-59: <span class="ruby-comment cmt"># The above hash is later converted into a list that points to the</span>
-60: <span class="ruby-comment cmt"># keyword documentation of the optional attribute.</span>
-61: <span class="ruby-ivar">@optionalAttributes</span> = []
-62: <span class="ruby-ivar">@scenarioSpecific</span> = <span class="ruby-keyword kw">false</span>
-63: <span class="ruby-ivar">@inheritedFromProject</span>= <span class="ruby-keyword kw">false</span>
-64: <span class="ruby-ivar">@inheritedFromParent</span> = <span class="ruby-keyword kw">false</span>
-65: <span class="ruby-ivar">@contexts</span> = []
-66: <span class="ruby-ivar">@seeAlso</span> = []
-67: <span class="ruby-comment cmt"># The following are references to the neighboring keyword in an</span>
-68: <span class="ruby-comment cmt"># alphabetically sorted list.</span>
-69: <span class="ruby-ivar">@predecessor</span> = <span class="ruby-keyword kw">nil</span>
-70: <span class="ruby-ivar">@successor</span> = <span class="ruby-keyword kw">nil</span>
-71: <span class="ruby-comment cmt"># Array to collect all references to other RichText objects.</span>
-72: <span class="ruby-ivar">@references</span> = []
-73: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 44</span>
+44: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">rule</span>, <span class="ruby-identifier">pattern</span>, <span class="ruby-identifier">syntax</span>, <span class="ruby-identifier">args</span>, <span class="ruby-identifier">optAttrPatterns</span>, <span class="ruby-identifier">manual</span>)
+45: <span class="ruby-ivar">@messageHandler</span> = <span class="ruby-constant">MessageHandler</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">true</span>)
+46: <span class="ruby-ivar">@rule</span> = <span class="ruby-identifier">rule</span>
+47: <span class="ruby-ivar">@pattern</span> = <span class="ruby-identifier">pattern</span>
+48: <span class="ruby-comment cmt"># The unique identifier. Usually the attribute or property name. To</span>
+49: <span class="ruby-comment cmt"># disambiguate a .<scope> can be added.</span>
+50: <span class="ruby-ivar">@keyword</span> = <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">keyword</span>
+51: <span class="ruby-comment cmt"># Similar to @keyword, but without the scope. Since there could be</span>
+52: <span class="ruby-comment cmt"># several, this is an Array of String objects.</span>
+53: <span class="ruby-ivar">@names</span> = []
+54: <span class="ruby-ivar">@syntax</span> = <span class="ruby-identifier">syntax</span>
+55: <span class="ruby-ivar">@args</span> = <span class="ruby-identifier">args</span>
+56: <span class="ruby-ivar">@manual</span> = <span class="ruby-identifier">manual</span>
+57: <span class="ruby-comment cmt"># Hash that maps patterns of optional attributes to a boolean value. It</span>
+58: <span class="ruby-comment cmt"># is true if the pattern is a scenario specific attribute.</span>
+59: <span class="ruby-ivar">@optAttrPatterns</span> = <span class="ruby-identifier">optAttrPatterns</span>
+60: <span class="ruby-comment cmt"># The above hash is later converted into a list that points to the</span>
+61: <span class="ruby-comment cmt"># keyword documentation of the optional attribute.</span>
+62: <span class="ruby-ivar">@optionalAttributes</span> = []
+63: <span class="ruby-ivar">@scenarioSpecific</span> = <span class="ruby-keyword kw">false</span>
+64: <span class="ruby-ivar">@inheritedFromProject</span>= <span class="ruby-keyword kw">false</span>
+65: <span class="ruby-ivar">@inheritedFromParent</span> = <span class="ruby-keyword kw">false</span>
+66: <span class="ruby-ivar">@contexts</span> = []
+67: <span class="ruby-ivar">@seeAlso</span> = []
+68: <span class="ruby-comment cmt"># The following are references to the neighboring keyword in an</span>
+69: <span class="ruby-comment cmt"># alphabetically sorted list.</span>
+70: <span class="ruby-ivar">@predecessor</span> = <span class="ruby-keyword kw">nil</span>
+71: <span class="ruby-ivar">@successor</span> = <span class="ruby-keyword kw">nil</span>
+72: <span class="ruby-comment cmt"># Array to collect all references to other RichText objects.</span>
+73: <span class="ruby-ivar">@references</span> = []
+74: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -892,41 +898,41 @@
<div class="method-source-code"
id="compute-nheritance-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 142</span>
-142: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">computeInheritance</span>(<span class="ruby-identifier">keywords</span>, <span class="ruby-identifier">rules</span>)
-143: <span class="ruby-identifier">property</span> = <span class="ruby-keyword kw">nil</span>
-144: <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">kwd</span><span class="ruby-operator">|</span>
-145: <span class="ruby-keyword kw">if</span> <span class="ruby-node">%( task resource account report shift scenario)</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">keyword</span>)
-146: <span class="ruby-identifier">property</span> = <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">keyword</span>
-147: <span class="ruby-keyword kw">break</span>
-148: <span class="ruby-keyword kw">end</span>
-149: <span class="ruby-keyword kw">end</span>
-150: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">property</span>
-151: <span class="ruby-identifier">project</span> = <span class="ruby-constant">Project</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'id'</span>, <span class="ruby-value str">'dummy'</span>, <span class="ruby-value str">'1.0'</span>, <span class="ruby-keyword kw">nil</span>)
-152: <span class="ruby-identifier">propertySet</span> = <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">property</span>
-153: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'task'</span>
-154: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">tasks</span>
-155: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'resource'</span>
-156: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">resources</span>
-157: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'account'</span>
-158: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">accounts</span>
-159: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'report'</span>
-160: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">reports</span>
-161: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'shift'</span>
-162: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">shifts</span>
-163: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'scenario'</span>
-164: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">scenarios</span>
-165: <span class="ruby-keyword kw">end</span>
-166: <span class="ruby-identifier">keyword</span> = <span class="ruby-ivar">@keyword</span>
-167: <span class="ruby-identifier">keyword</span> = <span class="ruby-identifier">keyword</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">'.'</span>)[<span class="ruby-value">0</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">keyword</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'.'</span>)
-168: <span class="ruby-ivar">@inheritedFromProject</span> = <span class="ruby-identifier">propertySet</span>.<span class="ruby-identifier">inheritedFromProject?</span>(<span class="ruby-identifier">keyword</span>)
-169: <span class="ruby-ivar">@inheritedFromParent</span> = <span class="ruby-identifier">propertySet</span>.<span class="ruby-identifier">inheritedFromParent?</span>(<span class="ruby-identifier">keyword</span>)
-170: <span class="ruby-keyword kw">end</span>
-171: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 143</span>
+143: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">computeInheritance</span>(<span class="ruby-identifier">keywords</span>, <span class="ruby-identifier">rules</span>)
+144: <span class="ruby-identifier">property</span> = <span class="ruby-keyword kw">nil</span>
+145: <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">kwd</span><span class="ruby-operator">|</span>
+146: <span class="ruby-keyword kw">if</span> <span class="ruby-node">%( task resource account report shift scenario)</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">keyword</span>)
+147: <span class="ruby-identifier">property</span> = <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">keyword</span>
+148: <span class="ruby-keyword kw">break</span>
+149: <span class="ruby-keyword kw">end</span>
+150: <span class="ruby-keyword kw">end</span>
+151: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">property</span>
+152: <span class="ruby-identifier">project</span> = <span class="ruby-constant">Project</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'id'</span>, <span class="ruby-value str">'dummy'</span>, <span class="ruby-value str">'1.0'</span>, <span class="ruby-keyword kw">nil</span>)
+153: <span class="ruby-identifier">propertySet</span> = <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">property</span>
+154: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'task'</span>
+155: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">tasks</span>
+156: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'resource'</span>
+157: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">resources</span>
+158: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'account'</span>
+159: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">accounts</span>
+160: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'report'</span>
+161: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">reports</span>
+162: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'shift'</span>
+163: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">shifts</span>
+164: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'scenario'</span>
+165: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">scenarios</span>
+166: <span class="ruby-keyword kw">end</span>
+167: <span class="ruby-identifier">keyword</span> = <span class="ruby-ivar">@keyword</span>
+168: <span class="ruby-identifier">keyword</span> = <span class="ruby-identifier">keyword</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">'.'</span>)[<span class="ruby-value">0</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">keyword</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'.'</span>)
+169: <span class="ruby-ivar">@inheritedFromProject</span> = <span class="ruby-identifier">propertySet</span>.<span class="ruby-identifier">inheritedFromProject?</span>(<span class="ruby-identifier">keyword</span>)
+170: <span class="ruby-ivar">@inheritedFromParent</span> = <span class="ruby-identifier">propertySet</span>.<span class="ruby-identifier">inheritedFromParent?</span>(<span class="ruby-identifier">keyword</span>)
+171: <span class="ruby-keyword kw">end</span>
+172: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -956,54 +962,54 @@
<div class="method-source-code"
id="cross-eference-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 98</span>
- 98: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">crossReference</span>(<span class="ruby-identifier">keywords</span>, <span class="ruby-identifier">rules</span>)
- 99: <span class="ruby-comment cmt"># Get the attribute or property name of the Keyword. This is not unique</span>
-100: <span class="ruby-comment cmt"># like @keyword since it's got no scope.</span>
-101: <span class="ruby-ivar">@pattern</span>.<span class="ruby-identifier">terminalTokens</span>(<span class="ruby-identifier">rules</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">tok</span><span class="ruby-operator">|</span>
-102: <span class="ruby-comment cmt"># Ignore patterns that don't have a real name.</span>
-103: <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tok</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">'{'</span>
-104:
-105: <span class="ruby-ivar">@names</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">tok</span>[<span class="ruby-value">0</span>]
-106: <span class="ruby-keyword kw">end</span>
-107:
-108: <span class="ruby-comment cmt"># Some arguments are references to other patterns. The current keyword</span>
-109: <span class="ruby-comment cmt"># is added as context to such patterns.</span>
-110: <span class="ruby-ivar">@args</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">arg</span><span class="ruby-operator">|</span>
-111: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">pattern</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">checkReference</span>(<span class="ruby-identifier">arg</span>.<span class="ruby-identifier">pattern</span>)
-112: <span class="ruby-identifier">kwd</span> = <span class="ruby-identifier">keywords</span>[<span class="ruby-identifier">arg</span>.<span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">keyword</span>]
-113: <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">contexts</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">self</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">contexts</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-keyword kw">self</span>)
-114: <span class="ruby-keyword kw">end</span>
-115: <span class="ruby-keyword kw">end</span>
-116:
-117: <span class="ruby-comment cmt"># Optional attributes are treated similarly. In addition we add them to</span>
-118: <span class="ruby-comment cmt"># the @optionalAttributes list of this keyword.</span>
-119: <span class="ruby-ivar">@optAttrPatterns</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">pattern</span>, <span class="ruby-identifier">scenarioSpecific</span><span class="ruby-operator">|</span>
-120: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">checkReference</span>(<span class="ruby-identifier">pattern</span>)
-121:
-122: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">kwd</span> = <span class="ruby-identifier">keywords</span>[<span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">keyword</span>]).<span class="ruby-identifier">nil?</span>
-123: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">terminalToken</span>(<span class="ruby-identifier">rules</span>)
-124: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">"Keyword #{keyword} has undocumented optional "</span> <span class="ruby-operator">+</span>
-125: <span class="ruby-node">"attribute #{token[0]}"</span>
-126: <span class="ruby-keyword kw">else</span>
-127: <span class="ruby-ivar">@optionalAttributes</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">kwd</span>
-128: <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">contexts</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">self</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">contexts</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-keyword kw">self</span>)
-129: <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">scenarioSpecific</span> = <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">scenarioSpecific</span>
-130: <span class="ruby-keyword kw">end</span>
-131: <span class="ruby-keyword kw">end</span>
-132:
-133: <span class="ruby-comment cmt"># Resolve the seeAlso patterns to keyword references.</span>
-134: <span class="ruby-ivar">@pattern</span>.<span class="ruby-identifier">seeAlso</span>.<span class="ruby-identifier">sort</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">also</span><span class="ruby-operator">|</span>
-135: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">keywords</span>[<span class="ruby-identifier">also</span>].<span class="ruby-identifier">nil?</span>
-136: <span class="ruby-identifier">raise</span> <span class="ruby-node">"See also reference #{also} of #{@pattern} is unknown"</span>
-137: <span class="ruby-keyword kw">end</span>
-138: <span class="ruby-ivar">@seeAlso</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">keywords</span>[<span class="ruby-identifier">also</span>]
-139: <span class="ruby-keyword kw">end</span>
-140: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 99</span>
+ 99: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">crossReference</span>(<span class="ruby-identifier">keywords</span>, <span class="ruby-identifier">rules</span>)
+100: <span class="ruby-comment cmt"># Get the attribute or property name of the Keyword. This is not unique</span>
+101: <span class="ruby-comment cmt"># like @keyword since it's got no scope.</span>
+102: <span class="ruby-ivar">@pattern</span>.<span class="ruby-identifier">terminalTokens</span>(<span class="ruby-identifier">rules</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">tok</span><span class="ruby-operator">|</span>
+103: <span class="ruby-comment cmt"># Ignore patterns that don't have a real name.</span>
+104: <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tok</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">'{'</span>
+105:
+106: <span class="ruby-ivar">@names</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">tok</span>[<span class="ruby-value">0</span>]
+107: <span class="ruby-keyword kw">end</span>
+108:
+109: <span class="ruby-comment cmt"># Some arguments are references to other patterns. The current keyword</span>
+110: <span class="ruby-comment cmt"># is added as context to such patterns.</span>
+111: <span class="ruby-ivar">@args</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">arg</span><span class="ruby-operator">|</span>
+112: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">pattern</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">checkReference</span>(<span class="ruby-identifier">arg</span>.<span class="ruby-identifier">pattern</span>)
+113: <span class="ruby-identifier">kwd</span> = <span class="ruby-identifier">keywords</span>[<span class="ruby-identifier">arg</span>.<span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">keyword</span>]
+114: <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">contexts</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">self</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">contexts</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-keyword kw">self</span>)
+115: <span class="ruby-keyword kw">end</span>
+116: <span class="ruby-keyword kw">end</span>
+117:
+118: <span class="ruby-comment cmt"># Optional attributes are treated similarly. In addition we add them to</span>
+119: <span class="ruby-comment cmt"># the @optionalAttributes list of this keyword.</span>
+120: <span class="ruby-ivar">@optAttrPatterns</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">pattern</span>, <span class="ruby-identifier">scenarioSpecific</span><span class="ruby-operator">|</span>
+121: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">checkReference</span>(<span class="ruby-identifier">pattern</span>)
+122:
+123: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">kwd</span> = <span class="ruby-identifier">keywords</span>[<span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">keyword</span>]).<span class="ruby-identifier">nil?</span>
+124: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">terminalToken</span>(<span class="ruby-identifier">rules</span>)
+125: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">"Keyword #{keyword} has undocumented optional "</span> <span class="ruby-operator">+</span>
+126: <span class="ruby-node">"attribute #{token[0]}"</span>
+127: <span class="ruby-keyword kw">else</span>
+128: <span class="ruby-ivar">@optionalAttributes</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">kwd</span>
+129: <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">contexts</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">self</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">contexts</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-keyword kw">self</span>)
+130: <span class="ruby-identifier">kwd</span>.<span class="ruby-identifier">scenarioSpecific</span> = <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">scenarioSpecific</span>
+131: <span class="ruby-keyword kw">end</span>
+132: <span class="ruby-keyword kw">end</span>
+133:
+134: <span class="ruby-comment cmt"># Resolve the seeAlso patterns to keyword references.</span>
+135: <span class="ruby-ivar">@pattern</span>.<span class="ruby-identifier">seeAlso</span>.<span class="ruby-identifier">sort</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">also</span><span class="ruby-operator">|</span>
+136: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">keywords</span>[<span class="ruby-identifier">also</span>].<span class="ruby-identifier">nil?</span>
+137: <span class="ruby-identifier">raise</span> <span class="ruby-node">"See also reference #{also} of #{@pattern} is unknown"</span>
+138: <span class="ruby-keyword kw">end</span>
+139: <span class="ruby-ivar">@seeAlso</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">keywords</span>[<span class="ruby-identifier">also</span>]
+140: <span class="ruby-keyword kw">end</span>
+141: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1033,208 +1039,211 @@
<div class="method-source-code"
id="generate--source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 305</span>
-305: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateHTML</span>(<span class="ruby-identifier">directory</span>)
-306: <span class="ruby-identifier">html</span> = <span class="ruby-constant">HTMLDocument</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">:strict</span>)
-307: <span class="ruby-identifier">head</span> = <span class="ruby-identifier">html</span>.<span class="ruby-identifier">generateHead</span>(<span class="ruby-identifier">keyword</span>,
-308: { <span class="ruby-value str">'description'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'The TaskJuggler Manual'</span>,
-309: <span class="ruby-value str">'keywords'</span> =<span class="ruby-operator">></span>
-310: <span class="ruby-value str">'taskjuggler, project, management'</span> })
-311: <span class="ruby-identifier">head</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@manual</span>.<span class="ruby-identifier">generateStyleSheet</span>
-312:
-313: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">body</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'body'</span>))
-314: <span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@manual</span>.<span class="ruby-identifier">generateHTMLHeader</span> <span class="ruby-operator"><<</span>
-315: <span class="ruby-identifier">generateHTMLNavigationBar</span>
-316:
-317: <span class="ruby-comment cmt"># Box with keyword name.</span>
-318: <span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">bbox</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'div'</span>,
-319: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'margin-left:5%; margin-right:5%'</span>))
-320: <span class="ruby-identifier">bbox</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">p</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'p'</span>))
-321: <span class="ruby-identifier">p</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tab</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
-322: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'table'</span>))
-323:
-324: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
-325: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Keyword'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
-326: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:15%'</span>)
-327: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">title</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>,
-328: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:85%; font-weight:bold'</span>)
-329:
-330: <span class="ruby-comment cmt"># Box with purpose, syntax, arguments and context.</span>
-331: <span class="ruby-identifier">bbox</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">p</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'p'</span>))
-332: <span class="ruby-identifier">p</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tab</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
-333: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'table'</span>))
-334: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">colgroup</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'colgroup'</span>))
-335: <span class="ruby-identifier">colgroup</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'col'</span>, <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'15%'</span>)
-336: <span class="ruby-identifier">colgroup</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'col'</span>, <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'85%'</span>)
-337:
-338: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
-339: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Purpose'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>)
-340: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
-341: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">newRichText</span>(<span class="ruby-ivar">@pattern</span>.<span class="ruby-identifier">doc</span>).<span class="ruby-identifier">to_html</span>
-342: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@syntax</span> <span class="ruby-operator">!=</span> <span class="ruby-value str">'[{ <attributes> }]'</span>
-343: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
-344: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Syntax'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>)
-345: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
-346: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"#{@syntax}"</span>, <span class="ruby-value str">'code'</span>)
-347:
-348: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
-349: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Arguments'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>)
-350: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@args</span>.<span class="ruby-identifier">empty?</span>
-351: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'none'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>)
-352: <span class="ruby-keyword kw">else</span>
-353: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
-354: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tab1</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'100%'</span>))
-355: <span class="ruby-ivar">@args</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">arg</span><span class="ruby-operator">|</span>
-356: <span class="ruby-identifier">tab1</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr1</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
-357: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> (<span class="ruby-value str">'<'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">+</span> <span class="ruby-value str">'>'</span>) <span class="ruby-operator">==</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>
-358: <span class="ruby-identifier">tr1</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"#{arg.name}"</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'30%'</span>)
-359: <span class="ruby-keyword kw">else</span>
-360: <span class="ruby-identifier">typeSpec</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>
-361: <span class="ruby-identifier">typeName</span> = <span class="ruby-identifier">typeSpec</span>[<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">2</span>]
-362: <span class="ruby-identifier">typeSpec</span>[<span class="ruby-value">0</span>] = <span class="ruby-value str">'['</span>
-363: <span class="ruby-identifier">typeSpec</span>[<span class="ruby-value">1</span>] = <span class="ruby-value str">']'</span>
-364: <span class="ruby-identifier">tr1</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'30%'</span>))
-365: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"#{arg.name} ["</span>)
-366: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(
-367: <span class="ruby-identifier">typeName</span>, <span class="ruby-value str">'a'</span>, <span class="ruby-value str">'href'</span> =<span class="ruby-operator">></span>
-368: <span class="ruby-node">"The_TaskJuggler_Syntax.html\##{typeName}"</span>)
-369: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">']'</span>)
-370: <span class="ruby-keyword kw">end</span>
-371: <span class="ruby-identifier">tr1</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>,
-372: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'margin-top:2px; margin-bottom:2px;'</span>))
-373: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">newRichText</span>(<span class="ruby-identifier">arg</span>.<span class="ruby-identifier">text</span> <span class="ruby-operator">||</span>
-374: <span class="ruby-node">"See [[#{arg.name}]] for details."</span>).<span class="ruby-identifier">to_html</span>
-375: <span class="ruby-keyword kw">end</span>
-376: <span class="ruby-keyword kw">end</span>
-377: <span class="ruby-keyword kw">end</span>
-378:
-379: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
-380: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Context'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>)
-381: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">empty?</span>
-382: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
-383: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Global scope'</span>, <span class="ruby-value str">'a'</span>,
-384: <span class="ruby-value str">'href'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'Getting_Started.html#Structure_of_a_TJP_File'</span>)
-385: <span class="ruby-keyword kw">else</span>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 306</span>
+306: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateHTML</span>(<span class="ruby-identifier">directory</span>)
+307: <span class="ruby-identifier">html</span> = <span class="ruby-constant">HTMLDocument</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">:strict</span>)
+308: <span class="ruby-identifier">head</span> = <span class="ruby-identifier">html</span>.<span class="ruby-identifier">generateHead</span>(<span class="ruby-identifier">keyword</span>,
+309: { <span class="ruby-value str">'description'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'The TaskJuggler Manual'</span>,
+310: <span class="ruby-value str">'keywords'</span> =<span class="ruby-operator">></span>
+311: <span class="ruby-value str">'taskjuggler, project, management'</span> })
+312: <span class="ruby-identifier">head</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@manual</span>.<span class="ruby-identifier">generateStyleSheet</span>
+313:
+314: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">body</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'body'</span>))
+315: <span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@manual</span>.<span class="ruby-identifier">generateHTMLHeader</span> <span class="ruby-operator"><<</span>
+316: <span class="ruby-identifier">generateHTMLNavigationBar</span>
+317:
+318: <span class="ruby-comment cmt"># Box with keyword name.</span>
+319: <span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">bbox</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'div'</span>,
+320: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'margin-left:5%; margin-right:5%'</span>))
+321: <span class="ruby-identifier">bbox</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">p</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'p'</span>))
+322: <span class="ruby-identifier">p</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tab</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
+323: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'table'</span>))
+324:
+325: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
+326: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Keyword'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
+327: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:15%'</span>)
+328: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">title</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>,
+329: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:85%; font-weight:bold'</span>)
+330:
+331: <span class="ruby-comment cmt"># Box with purpose, syntax, arguments and context.</span>
+332: <span class="ruby-identifier">bbox</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">p</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'p'</span>))
+333: <span class="ruby-identifier">p</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tab</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
+334: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'table'</span>))
+335: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">colgroup</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'colgroup'</span>))
+336: <span class="ruby-identifier">colgroup</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'col'</span>, <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'15%'</span>)
+337: <span class="ruby-identifier">colgroup</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'col'</span>, <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'85%'</span>)
+338:
+339: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
+340: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Purpose'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>)
+341: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
+342: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">newRichText</span>(<span class="ruby-ivar">@pattern</span>.<span class="ruby-identifier">doc</span>).<span class="ruby-identifier">to_html</span>
+343: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@syntax</span> <span class="ruby-operator">!=</span> <span class="ruby-value str">'[{ <attributes> }]'</span>
+344: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
+345: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Syntax'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>)
+346: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
+347: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"#{@syntax}"</span>, <span class="ruby-value str">'code'</span>)
+348:
+349: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
+350: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Arguments'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>)
+351: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@args</span>.<span class="ruby-identifier">empty?</span>
+352: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'none'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>)
+353: <span class="ruby-keyword kw">else</span>
+354: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>))
+355: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tab1</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'attrtable'</span>,
+356: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:100%;'</span>))
+357: <span class="ruby-ivar">@args</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">arg</span><span class="ruby-operator">|</span>
+358: <span class="ruby-identifier">tab1</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr1</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
+359: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> (<span class="ruby-value str">'<'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">name</span> <span class="ruby-operator">+</span> <span class="ruby-value str">'>'</span>) <span class="ruby-operator">==</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>
+360: <span class="ruby-identifier">tr1</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"#{arg.name}"</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'attrtag'</span>,
+361: <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'30%'</span>)
+362: <span class="ruby-keyword kw">else</span>
+363: <span class="ruby-identifier">typeSpec</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>
+364: <span class="ruby-identifier">typeName</span> = <span class="ruby-identifier">typeSpec</span>[<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">2</span>]
+365: <span class="ruby-identifier">typeSpec</span>[<span class="ruby-value">0</span>] = <span class="ruby-value str">'['</span>
+366: <span class="ruby-identifier">typeSpec</span>[<span class="ruby-value">1</span>] = <span class="ruby-value str">']'</span>
+367: <span class="ruby-identifier">tr1</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'attrtag'</span>,
+368: <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'30%'</span>))
+369: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"#{arg.name} ["</span>)
+370: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(
+371: <span class="ruby-identifier">typeName</span>, <span class="ruby-value str">'a'</span>, <span class="ruby-value str">'href'</span> =<span class="ruby-operator">></span>
+372: <span class="ruby-node">"The_TaskJuggler_Syntax.html\##{typeName}"</span>)
+373: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">']'</span>)
+374: <span class="ruby-keyword kw">end</span>
+375: <span class="ruby-identifier">tr1</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'attrdescr'</span>,
+376: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'margin-top:2px; margin-bottom:2px;'</span>))
+377: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">newRichText</span>(<span class="ruby-identifier">arg</span>.<span class="ruby-identifier">text</span> <span class="ruby-operator">||</span>
+378: <span class="ruby-node">"See [[#{arg.name}]] for details."</span>).<span class="ruby-identifier">to_html</span>
+379: <span class="ruby-keyword kw">end</span>
+380: <span class="ruby-keyword kw">end</span>
+381: <span class="ruby-keyword kw">end</span>
+382:
+383: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
+384: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Context'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>)
+385: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">empty?</span>
386: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
-387: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
-388: <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">context</span><span class="ruby-operator">|</span>
-389: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">first</span>
-390: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
-391: <span class="ruby-keyword kw">else</span>
-392: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">', '</span>)
-393: <span class="ruby-keyword kw">end</span>
-394: <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">td</span>, <span class="ruby-identifier">context</span>)
-395: <span class="ruby-keyword kw">end</span>
-396: <span class="ruby-keyword kw">end</span>
-397:
-398: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@seeAlso</span>.<span class="ruby-identifier">empty?</span>
-399: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
-400: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'See also'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>)
-401: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
-402: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
-403: <span class="ruby-ivar">@seeAlso</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">also</span><span class="ruby-operator">|</span>
-404: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">first</span>
-405: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
-406: <span class="ruby-keyword kw">else</span>
-407: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">', '</span>)
-408: <span class="ruby-keyword kw">end</span>
-409: <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">td</span>, <span class="ruby-identifier">also</span>)
-410: <span class="ruby-keyword kw">end</span>
-411: <span class="ruby-keyword kw">end</span>
-412:
-413: <span class="ruby-comment cmt"># Box with attributes.</span>
-414: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">empty?</span>
-415: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">sort!</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span><span class="ruby-operator">|</span>
-416: <span class="ruby-identifier">a</span>.<span class="ruby-identifier">keyword</span> <span class="ruby-operator"><=></span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">keyword</span>
-417: <span class="ruby-keyword kw">end</span>
-418:
-419: <span class="ruby-identifier">showDetails</span> = <span class="ruby-keyword kw">false</span>
-420: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attr</span><span class="ruby-operator">|</span>
-421: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">scenarioSpecific</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromProject</span> <span class="ruby-operator">||</span>
-422: <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromParent</span>
-423: <span class="ruby-identifier">showDetails</span> = <span class="ruby-keyword kw">true</span>
-424: <span class="ruby-keyword kw">break</span>
-425: <span class="ruby-keyword kw">end</span>
-426: <span class="ruby-keyword kw">end</span>
-427:
-428: <span class="ruby-identifier">bbox</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">p</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'p'</span>))
-429: <span class="ruby-identifier">p</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tab</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
-430: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'table'</span>))
-431: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
-432: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">showDetails</span>
-433: <span class="ruby-comment cmt"># Table of all attributes with checkmarks for being scenario</span>
-434: <span class="ruby-comment cmt"># specific, inherited from parent and inherited from global scope.</span>
-435: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Attributes'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
-436: <span class="ruby-value str">'rowspan'</span> =<span class="ruby-operator">></span>
-437: <span class="ruby-node">"#{@optionalAttributes.length + 1}"</span>,
-438: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:15%'</span>)
-439: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Name'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
-440: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:40%'</span>)
-441: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Scen. spec.'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
+387: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Global scope'</span>, <span class="ruby-value str">'a'</span>,
+388: <span class="ruby-value str">'href'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'Getting_Started.html#Structure_of_a_TJP_File'</span>)
+389: <span class="ruby-keyword kw">else</span>
+390: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
+391: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
+392: <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">context</span><span class="ruby-operator">|</span>
+393: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">first</span>
+394: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
+395: <span class="ruby-keyword kw">else</span>
+396: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">', '</span>)
+397: <span class="ruby-keyword kw">end</span>
+398: <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">td</span>, <span class="ruby-identifier">context</span>)
+399: <span class="ruby-keyword kw">end</span>
+400: <span class="ruby-keyword kw">end</span>
+401:
+402: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@seeAlso</span>.<span class="ruby-identifier">empty?</span>
+403: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
+404: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'See also'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>)
+405: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
+406: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
+407: <span class="ruby-ivar">@seeAlso</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">also</span><span class="ruby-operator">|</span>
+408: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">first</span>
+409: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
+410: <span class="ruby-keyword kw">else</span>
+411: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">', '</span>)
+412: <span class="ruby-keyword kw">end</span>
+413: <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">td</span>, <span class="ruby-identifier">also</span>)
+414: <span class="ruby-keyword kw">end</span>
+415: <span class="ruby-keyword kw">end</span>
+416:
+417: <span class="ruby-comment cmt"># Box with attributes.</span>
+418: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">empty?</span>
+419: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">sort!</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span><span class="ruby-operator">|</span>
+420: <span class="ruby-identifier">a</span>.<span class="ruby-identifier">keyword</span> <span class="ruby-operator"><=></span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">keyword</span>
+421: <span class="ruby-keyword kw">end</span>
+422:
+423: <span class="ruby-identifier">showDetails</span> = <span class="ruby-keyword kw">false</span>
+424: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attr</span><span class="ruby-operator">|</span>
+425: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">scenarioSpecific</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromProject</span> <span class="ruby-operator">||</span>
+426: <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromParent</span>
+427: <span class="ruby-identifier">showDetails</span> = <span class="ruby-keyword kw">true</span>
+428: <span class="ruby-keyword kw">break</span>
+429: <span class="ruby-keyword kw">end</span>
+430: <span class="ruby-keyword kw">end</span>
+431:
+432: <span class="ruby-identifier">bbox</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">p</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'p'</span>))
+433: <span class="ruby-identifier">p</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tab</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
+434: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'table'</span>))
+435: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
+436: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">showDetails</span>
+437: <span class="ruby-comment cmt"># Table of all attributes with checkmarks for being scenario</span>
+438: <span class="ruby-comment cmt"># specific, inherited from parent and inherited from global scope.</span>
+439: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Attributes'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
+440: <span class="ruby-value str">'rowspan'</span> =<span class="ruby-operator">></span>
+441: <span class="ruby-node">"#{@optionalAttributes.length + 1}"</span>,
442: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:15%'</span>)
-443: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Inh. fm. Global'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
-444: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:15%'</span>)
-445: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Inh. fm. Parent'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
+443: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Name'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
+444: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:40%'</span>)
+445: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Scen. spec.'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
446: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:15%'</span>)
-447: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attr</span><span class="ruby-operator">|</span>
-448: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
-449: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
-450: <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">td</span>, <span class="ruby-identifier">attr</span>)
-451: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
-452: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
-453: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'x'</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">scenarioSpecific</span>
-454: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
-455: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
-456: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'x'</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromProject</span>
-457: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
-458: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
-459: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'x'</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromParent</span>
-460: <span class="ruby-keyword kw">end</span>
-461: <span class="ruby-keyword kw">else</span>
-462: <span class="ruby-comment cmt"># Comma separated list of all attributes.</span>
-463: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Attributes'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
-464: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:15%'</span>)
-465: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>,
-466: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:85%'</span>))
-467: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
-468: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attr</span><span class="ruby-operator">|</span>
-469: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">first</span>
-470: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
-471: <span class="ruby-keyword kw">else</span>
-472: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">', '</span>)
-473: <span class="ruby-keyword kw">end</span>
-474: <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">td</span>, <span class="ruby-identifier">attr</span>)
-475: <span class="ruby-keyword kw">end</span>
-476: <span class="ruby-keyword kw">end</span>
-477: <span class="ruby-keyword kw">end</span>
-478:
-479: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@pattern</span>.<span class="ruby-identifier">exampleFile</span>
-480: <span class="ruby-identifier">exampleDir</span> = <span class="ruby-constant">AppConfig</span>.<span class="ruby-identifier">dataDirs</span>(<span class="ruby-value str">'test'</span>)[<span class="ruby-value">0</span>] <span class="ruby-operator">+</span> <span class="ruby-value str">"TestSuite/Syntax/Correct/"</span>
-481: <span class="ruby-identifier">example</span> = <span class="ruby-constant">TjpExample</span>.<span class="ruby-identifier">new</span>
-482: <span class="ruby-identifier">fileName</span> = <span class="ruby-node">"#{exampleDir}/#{@pattern.exampleFile}.tjp"</span>
-483: <span class="ruby-identifier">example</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">fileName</span>)
-484: <span class="ruby-identifier">bbox</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">frame</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'div'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'codeframe'</span>))
-485: <span class="ruby-identifier">frame</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">pre</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'pre'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'code'</span>))
-486: <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">text</span> = <span class="ruby-identifier">example</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-ivar">@pattern</span>.<span class="ruby-identifier">exampleTag</span>))
-487: <span class="ruby-identifier">raise</span> <span class="ruby-node">"There is no tag '#{@pattern.exampleTag}' in file "</span> <span class="ruby-operator">+</span>
-488: <span class="ruby-node">"#{fileName}."</span>
-489: <span class="ruby-keyword kw">end</span>
-490: <span class="ruby-identifier">pre</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">text</span>)
-491: <span class="ruby-keyword kw">end</span>
-492:
-493: <span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">generateHTMLNavigationBar</span>
-494: <span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@manual</span>.<span class="ruby-identifier">generateHTMLFooter</span>
-495:
-496: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directory</span>
-497: <span class="ruby-identifier">html</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">directory</span> <span class="ruby-operator">+</span> <span class="ruby-node">"#{keyword}.html"</span>)
-498: <span class="ruby-keyword kw">else</span>
-499: <span class="ruby-identifier">puts</span> <span class="ruby-identifier">html</span>.<span class="ruby-identifier">to_s</span>
-500: <span class="ruby-keyword kw">end</span>
-501: <span class="ruby-keyword kw">end</span></pre>
+447: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Inh. fm. Global'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
+448: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:15%'</span>)
+449: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Inh. fm. Parent'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
+450: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:15%'</span>)
+451: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attr</span><span class="ruby-operator">|</span>
+452: <span class="ruby-identifier">tab</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'left'</span>))
+453: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
+454: <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">td</span>, <span class="ruby-identifier">attr</span>)
+455: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
+456: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
+457: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'x'</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">scenarioSpecific</span>
+458: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
+459: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
+460: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'x'</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromProject</span>
+461: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
+462: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>))
+463: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'x'</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromParent</span>
+464: <span class="ruby-keyword kw">end</span>
+465: <span class="ruby-keyword kw">else</span>
+466: <span class="ruby-comment cmt"># Comma separated list of all attributes.</span>
+467: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'Attributes'</span>, <span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tag'</span>,
+468: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:15%'</span>)
+469: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>,
+470: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'width:85%'</span>))
+471: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
+472: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attr</span><span class="ruby-operator">|</span>
+473: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">first</span>
+474: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
+475: <span class="ruby-keyword kw">else</span>
+476: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">', '</span>)
+477: <span class="ruby-keyword kw">end</span>
+478: <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">td</span>, <span class="ruby-identifier">attr</span>)
+479: <span class="ruby-keyword kw">end</span>
+480: <span class="ruby-keyword kw">end</span>
+481: <span class="ruby-keyword kw">end</span>
+482:
+483: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@pattern</span>.<span class="ruby-identifier">exampleFile</span>
+484: <span class="ruby-identifier">exampleDir</span> = <span class="ruby-constant">AppConfig</span>.<span class="ruby-identifier">dataDirs</span>(<span class="ruby-value str">'test'</span>)[<span class="ruby-value">0</span>] <span class="ruby-operator">+</span> <span class="ruby-value str">"TestSuite/Syntax/Correct/"</span>
+485: <span class="ruby-identifier">example</span> = <span class="ruby-constant">TjpExample</span>.<span class="ruby-identifier">new</span>
+486: <span class="ruby-identifier">fileName</span> = <span class="ruby-node">"#{exampleDir}/#{@pattern.exampleFile}.tjp"</span>
+487: <span class="ruby-identifier">example</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">fileName</span>)
+488: <span class="ruby-identifier">bbox</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">frame</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'div'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'codeframe'</span>))
+489: <span class="ruby-identifier">frame</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">pre</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'pre'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'code'</span>))
+490: <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">text</span> = <span class="ruby-identifier">example</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-ivar">@pattern</span>.<span class="ruby-identifier">exampleTag</span>))
+491: <span class="ruby-identifier">raise</span> <span class="ruby-node">"There is no tag '#{@pattern.exampleTag}' in file "</span> <span class="ruby-operator">+</span>
+492: <span class="ruby-node">"#{fileName}."</span>
+493: <span class="ruby-keyword kw">end</span>
+494: <span class="ruby-identifier">pre</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">text</span>)
+495: <span class="ruby-keyword kw">end</span>
+496:
+497: <span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">generateHTMLNavigationBar</span>
+498: <span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@manual</span>.<span class="ruby-identifier">generateHTMLFooter</span>
+499:
+500: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directory</span>
+501: <span class="ruby-identifier">html</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">directory</span> <span class="ruby-operator">+</span> <span class="ruby-node">"#{keyword}.html"</span>)
+502: <span class="ruby-keyword kw">else</span>
+503: <span class="ruby-identifier">puts</span> <span class="ruby-identifier">html</span>.<span class="ruby-identifier">to_s</span>
+504: <span class="ruby-keyword kw">end</span>
+505: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1264,18 +1273,18 @@
<div class="method-source-code"
id="global-cope--source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 88</span>
-88: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">globalScope?</span>
-89: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">empty?</span>
-90: <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">context</span><span class="ruby-operator">|</span>
-91: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">context</span>.<span class="ruby-identifier">keyword</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'properties'</span>
-92: <span class="ruby-keyword kw">end</span>
-93: <span class="ruby-keyword kw">false</span>
-94: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 89</span>
+89: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">globalScope?</span>
+90: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">empty?</span>
+91: <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">context</span><span class="ruby-operator">|</span>
+92: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">context</span>.<span class="ruby-identifier">keyword</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'properties'</span>
+93: <span class="ruby-keyword kw">end</span>
+94: <span class="ruby-keyword kw">false</span>
+95: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1306,19 +1315,19 @@
<div class="method-source-code"
id="is-roperty--source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 77</span>
-77: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isProperty?</span>
-78: <span class="ruby-comment cmt"># I haven't found a good way to automatically detect all the various</span>
-79: <span class="ruby-comment cmt"># report types as properties. The non-nestable ones need to be added</span>
-80: <span class="ruby-comment cmt"># manually here.</span>
-81: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">if</span> <span class="ruby-node">%( export nikureport timesheetreport statussheetreport)</span>.
-82: <span class="ruby-identifier">include?</span>(<span class="ruby-identifier">keyword</span>)
-83: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-keyword kw">self</span>)
-84: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 78</span>
+78: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isProperty?</span>
+79: <span class="ruby-comment cmt"># I haven't found a good way to automatically detect all the various</span>
+80: <span class="ruby-comment cmt"># report types as properties. The non-nestable ones need to be added</span>
+81: <span class="ruby-comment cmt"># manually here.</span>
+82: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">if</span> <span class="ruby-node">%( export nikureport timesheetreport statussheetreport)</span>.
+83: <span class="ruby-identifier">include?</span>(<span class="ruby-identifier">keyword</span>)
+84: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-keyword kw">self</span>)
+85: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1349,20 +1358,20 @@
<div class="method-source-code"
id="title-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 175</span>
-175: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">title</span>
-176: <span class="ruby-identifier">kwTokens</span> = <span class="ruby-ivar">@keyword</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">'.'</span>)
-177: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">kwTokens</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
-178: <span class="ruby-identifier">title</span> = <span class="ruby-ivar">@keyword</span>
-179: <span class="ruby-keyword kw">else</span>
-180: <span class="ruby-identifier">title</span> = <span class="ruby-node">"#{kwTokens[0]} (#{kwTokens[1]})"</span>
-181: <span class="ruby-keyword kw">end</span>
-182: <span class="ruby-identifier">title</span>
-183: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 176</span>
+176: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">title</span>
+177: <span class="ruby-identifier">kwTokens</span> = <span class="ruby-ivar">@keyword</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">'.'</span>)
+178: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">kwTokens</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
+179: <span class="ruby-identifier">title</span> = <span class="ruby-ivar">@keyword</span>
+180: <span class="ruby-keyword kw">else</span>
+181: <span class="ruby-identifier">title</span> = <span class="ruby-node">"#{kwTokens[0]} (#{kwTokens[1]})"</span>
+182: <span class="ruby-keyword kw">end</span>
+183: <span class="ruby-identifier">title</span>
+184: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1391,126 +1400,126 @@
<div class="method-source-code"
id="to-s-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 187</span>
-187: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
-188: <span class="ruby-identifier">tagW</span> = <span class="ruby-value">13</span>
-189: <span class="ruby-identifier">textW</span> = <span class="ruby-value">79</span>
-190:
-191: <span class="ruby-comment cmt"># Top line with multiple elements</span>
-192: <span class="ruby-identifier">str</span> = <span class="ruby-node">"Keyword: #{@keyword} "</span> <span class="ruby-operator">+</span>
-193: <span class="ruby-node">"Scenario Specific: #{@scenarioSpecific ? 'Yes' : 'No'} "</span> <span class="ruby-operator">+</span>
-194: <span class="ruby-node">"Inherited: #{@inheritedFromParent ? 'Yes' : 'No'}\n\n"</span>
-195:
-196: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-node">"Purpose: #{format(tagW, newRichText(@pattern.doc).to_s,
-197: textW)}\n\n"</span>
-198:
-199: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@syntax</span> <span class="ruby-operator">!=</span> <span class="ruby-value str">'[{ <attributes> }]'</span>
-200: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-node">"Syntax: #{format(tagW, @syntax, textW)}\n\n"</span>
-201:
-202: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"Arguments: "</span>
-203: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@args</span>.<span class="ruby-identifier">empty?</span>
-204: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-value str">"none\n\n"</span>, <span class="ruby-identifier">textW</span>)
-205: <span class="ruby-keyword kw">else</span>
-206: <span class="ruby-identifier">argStr</span> = <span class="ruby-value str">''</span>
-207: <span class="ruby-ivar">@args</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">arg</span><span class="ruby-operator">|</span>
-208: <span class="ruby-identifier">argText</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">text</span> <span class="ruby-operator">||</span> <span class="ruby-node">"See '#{arg.name}' for details."</span>
-209: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> (<span class="ruby-node">"<#{arg.name}>"</span>) <span class="ruby-operator">==</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>
-210: <span class="ruby-identifier">indent</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">name</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>
-211: <span class="ruby-identifier">argStr</span> <span class="ruby-operator">+=</span> <span class="ruby-node">"#{arg.name}: "</span> <span class="ruby-operator">+</span>
-212: <span class="ruby-node">"#{format(indent, argText, textW - tagW)}\n"</span>
-213: <span class="ruby-keyword kw">else</span>
-214: <span class="ruby-identifier">typeSpec</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>
-215: <span class="ruby-identifier">typeSpec</span>[<span class="ruby-value">0</span>] = <span class="ruby-value str">'['</span>
-216: <span class="ruby-identifier">typeSpec</span>[<span class="ruby-value">1</span>] = <span class="ruby-value str">']'</span>
-217: <span class="ruby-identifier">indent</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">name</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">typeSpec</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">+</span> <span class="ruby-value">3</span>
-218: <span class="ruby-identifier">argStr</span> <span class="ruby-operator">+=</span> <span class="ruby-node">"#{arg.name} #{typeSpec}: "</span> <span class="ruby-operator">+</span>
-219: <span class="ruby-node">"#{format(indent, argText, textW - tagW)}\n"</span>
-220: <span class="ruby-keyword kw">end</span>
-221: <span class="ruby-keyword kw">end</span>
-222: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">indent</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-identifier">argStr</span>)
-223: <span class="ruby-keyword kw">end</span>
-224: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"\n"</span>
-225: <span class="ruby-keyword kw">end</span>
-226:
-227: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'Context: '</span>
-228: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">empty?</span>
-229: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-value str">'Global scope'</span>, <span class="ruby-identifier">textW</span>)
-230: <span class="ruby-keyword kw">else</span>
-231: <span class="ruby-identifier">cxtStr</span> = <span class="ruby-value str">''</span>
-232: <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">context</span><span class="ruby-operator">|</span>
-233: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">cxtStr</span>.<span class="ruby-identifier">empty?</span>
-234: <span class="ruby-identifier">cxtStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">', '</span>
-235: <span class="ruby-keyword kw">end</span>
-236: <span class="ruby-identifier">cxtStr</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">context</span>.<span class="ruby-identifier">keyword</span>
-237: <span class="ruby-keyword kw">end</span>
-238: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-identifier">cxtStr</span>, <span class="ruby-identifier">textW</span>)
-239: <span class="ruby-keyword kw">end</span>
-240:
-241: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"\n\nAttributes: "</span>
-242: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">empty?</span>
-243: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"none\n\n"</span>
-244: <span class="ruby-keyword kw">else</span>
-245: <span class="ruby-identifier">attrStr</span> = <span class="ruby-value str">''</span>
-246: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">sort!</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span><span class="ruby-operator">|</span>
-247: <span class="ruby-identifier">a</span>.<span class="ruby-identifier">keyword</span> <span class="ruby-operator"><=></span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">keyword</span>
-248: <span class="ruby-keyword kw">end</span>
-249: <span class="ruby-identifier">showLegend</span> = <span class="ruby-keyword kw">false</span>
-250: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attr</span><span class="ruby-operator">|</span>
-251: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">attrStr</span>.<span class="ruby-identifier">empty?</span>
-252: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">', '</span>
-253: <span class="ruby-keyword kw">end</span>
-254: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">keyword</span>
-255: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">scenarioSpecific</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromProject</span> <span class="ruby-operator">||</span>
-256: <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromParent</span>
-257: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
-258: <span class="ruby-identifier">showLegend</span> = <span class="ruby-keyword kw">true</span>
-259: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'['</span>
-260: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">scenarioSpecific</span>
-261: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'sc'</span>
-262: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
-263: <span class="ruby-keyword kw">end</span>
-264: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromProject</span>
-265: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">':'</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">first</span>
-266: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'ig'</span>
-267: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
-268: <span class="ruby-keyword kw">end</span>
-269: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromParent</span>
-270: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">':'</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">first</span>
-271: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'ip'</span>
-272: <span class="ruby-keyword kw">end</span>
-273: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">']'</span>
-274: <span class="ruby-keyword kw">end</span>
-275: <span class="ruby-keyword kw">end</span>
-276: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">showLegend</span>
-277: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"\n\n[sc] : Attribute is scenario specific"</span> <span class="ruby-operator">+</span>
-278: <span class="ruby-value str">"\n[ig] : Attribute is inherited from global attribute"</span> <span class="ruby-operator">+</span>
-279: <span class="ruby-value str">"\n[ip] : Attribute is inherited from parent property"</span>
-280: <span class="ruby-keyword kw">end</span>
-281: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-identifier">attrStr</span>, <span class="ruby-identifier">textW</span>)
-282: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"\n"</span>
-283: <span class="ruby-keyword kw">end</span>
-284:
-285: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@seeAlso</span>.<span class="ruby-identifier">empty?</span>
-286: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"See also: "</span>
-287: <span class="ruby-identifier">alsoStr</span> = <span class="ruby-value str">''</span>
-288: <span class="ruby-ivar">@seeAlso</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">also</span><span class="ruby-operator">|</span>
-289: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">alsoStr</span>.<span class="ruby-identifier">empty?</span>
-290: <span class="ruby-identifier">alsoStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">', '</span>
-291: <span class="ruby-keyword kw">end</span>
-292: <span class="ruby-identifier">alsoStr</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">also</span>.<span class="ruby-identifier">keyword</span>
-293: <span class="ruby-keyword kw">end</span>
-294: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-identifier">alsoStr</span>, <span class="ruby-identifier">textW</span>)
-295: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"\n"</span>
-296: <span class="ruby-keyword kw">end</span>
-297:
-298: <span class="ruby-comment cmt"># str += "Rule: #{@rule.name}\n" if @rule</span>
-299: <span class="ruby-comment cmt"># str += "Pattern: #{@pattern.tokens.join(' ')}\n" if @pattern</span>
-300: <span class="ruby-identifier">str</span>
-301: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 188</span>
+188: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
+189: <span class="ruby-identifier">tagW</span> = <span class="ruby-value">13</span>
+190: <span class="ruby-identifier">textW</span> = <span class="ruby-value">79</span>
+191:
+192: <span class="ruby-comment cmt"># Top line with multiple elements</span>
+193: <span class="ruby-identifier">str</span> = <span class="ruby-node">"Keyword: #{@keyword} "</span> <span class="ruby-operator">+</span>
+194: <span class="ruby-node">"Scenario Specific: #{@scenarioSpecific ? 'Yes' : 'No'} "</span> <span class="ruby-operator">+</span>
+195: <span class="ruby-node">"Inherited: #{@inheritedFromParent ? 'Yes' : 'No'}\n\n"</span>
+196:
+197: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-node">"Purpose: #{format(tagW, newRichText(@pattern.doc).to_s,
+198: textW)}\n\n"</span>
+199:
+200: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@syntax</span> <span class="ruby-operator">!=</span> <span class="ruby-value str">'[{ <attributes> }]'</span>
+201: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-node">"Syntax: #{format(tagW, @syntax, textW)}\n\n"</span>
+202:
+203: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"Arguments: "</span>
+204: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@args</span>.<span class="ruby-identifier">empty?</span>
+205: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-value str">"none\n\n"</span>, <span class="ruby-identifier">textW</span>)
+206: <span class="ruby-keyword kw">else</span>
+207: <span class="ruby-identifier">argStr</span> = <span class="ruby-value str">''</span>
+208: <span class="ruby-ivar">@args</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">arg</span><span class="ruby-operator">|</span>
+209: <span class="ruby-identifier">argText</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">text</span> <span class="ruby-operator">||</span> <span class="ruby-node">"See '#{arg.name}' for details."</span>
+210: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> (<span class="ruby-node">"<#{arg.name}>"</span>) <span class="ruby-operator">==</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>
+211: <span class="ruby-identifier">indent</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">name</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>
+212: <span class="ruby-identifier">argStr</span> <span class="ruby-operator">+=</span> <span class="ruby-node">"#{arg.name}: "</span> <span class="ruby-operator">+</span>
+213: <span class="ruby-node">"#{format(indent, argText, textW - tagW)}\n"</span>
+214: <span class="ruby-keyword kw">else</span>
+215: <span class="ruby-identifier">typeSpec</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">typeSpec</span>
+216: <span class="ruby-identifier">typeSpec</span>[<span class="ruby-value">0</span>] = <span class="ruby-value str">'['</span>
+217: <span class="ruby-identifier">typeSpec</span>[<span class="ruby-value">1</span>] = <span class="ruby-value str">']'</span>
+218: <span class="ruby-identifier">indent</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">name</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">typeSpec</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">+</span> <span class="ruby-value">3</span>
+219: <span class="ruby-identifier">argStr</span> <span class="ruby-operator">+=</span> <span class="ruby-node">"#{arg.name} #{typeSpec}: "</span> <span class="ruby-operator">+</span>
+220: <span class="ruby-node">"#{format(indent, argText, textW - tagW)}\n"</span>
+221: <span class="ruby-keyword kw">end</span>
+222: <span class="ruby-keyword kw">end</span>
+223: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">indent</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-identifier">argStr</span>)
+224: <span class="ruby-keyword kw">end</span>
+225: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"\n"</span>
+226: <span class="ruby-keyword kw">end</span>
+227:
+228: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'Context: '</span>
+229: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">empty?</span>
+230: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-value str">'Global scope'</span>, <span class="ruby-identifier">textW</span>)
+231: <span class="ruby-keyword kw">else</span>
+232: <span class="ruby-identifier">cxtStr</span> = <span class="ruby-value str">''</span>
+233: <span class="ruby-ivar">@contexts</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">context</span><span class="ruby-operator">|</span>
+234: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">cxtStr</span>.<span class="ruby-identifier">empty?</span>
+235: <span class="ruby-identifier">cxtStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">', '</span>
+236: <span class="ruby-keyword kw">end</span>
+237: <span class="ruby-identifier">cxtStr</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">context</span>.<span class="ruby-identifier">keyword</span>
+238: <span class="ruby-keyword kw">end</span>
+239: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-identifier">cxtStr</span>, <span class="ruby-identifier">textW</span>)
+240: <span class="ruby-keyword kw">end</span>
+241:
+242: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"\n\nAttributes: "</span>
+243: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">empty?</span>
+244: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"none\n\n"</span>
+245: <span class="ruby-keyword kw">else</span>
+246: <span class="ruby-identifier">attrStr</span> = <span class="ruby-value str">''</span>
+247: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">sort!</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span><span class="ruby-operator">|</span>
+248: <span class="ruby-identifier">a</span>.<span class="ruby-identifier">keyword</span> <span class="ruby-operator"><=></span> <span class="ruby-identifier">b</span>.<span class="ruby-identifier">keyword</span>
+249: <span class="ruby-keyword kw">end</span>
+250: <span class="ruby-identifier">showLegend</span> = <span class="ruby-keyword kw">false</span>
+251: <span class="ruby-ivar">@optionalAttributes</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attr</span><span class="ruby-operator">|</span>
+252: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">attrStr</span>.<span class="ruby-identifier">empty?</span>
+253: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">', '</span>
+254: <span class="ruby-keyword kw">end</span>
+255: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">keyword</span>
+256: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">scenarioSpecific</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromProject</span> <span class="ruby-operator">||</span>
+257: <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromParent</span>
+258: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
+259: <span class="ruby-identifier">showLegend</span> = <span class="ruby-keyword kw">true</span>
+260: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'['</span>
+261: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">scenarioSpecific</span>
+262: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'sc'</span>
+263: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
+264: <span class="ruby-keyword kw">end</span>
+265: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromProject</span>
+266: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">':'</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">first</span>
+267: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'ig'</span>
+268: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
+269: <span class="ruby-keyword kw">end</span>
+270: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">inheritedFromParent</span>
+271: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">':'</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">first</span>
+272: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'ip'</span>
+273: <span class="ruby-keyword kw">end</span>
+274: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">']'</span>
+275: <span class="ruby-keyword kw">end</span>
+276: <span class="ruby-keyword kw">end</span>
+277: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">showLegend</span>
+278: <span class="ruby-identifier">attrStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"\n\n[sc] : Attribute is scenario specific"</span> <span class="ruby-operator">+</span>
+279: <span class="ruby-value str">"\n[ig] : Attribute is inherited from global attribute"</span> <span class="ruby-operator">+</span>
+280: <span class="ruby-value str">"\n[ip] : Attribute is inherited from parent property"</span>
+281: <span class="ruby-keyword kw">end</span>
+282: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-identifier">attrStr</span>, <span class="ruby-identifier">textW</span>)
+283: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"\n"</span>
+284: <span class="ruby-keyword kw">end</span>
+285:
+286: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@seeAlso</span>.<span class="ruby-identifier">empty?</span>
+287: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"See also: "</span>
+288: <span class="ruby-identifier">alsoStr</span> = <span class="ruby-value str">''</span>
+289: <span class="ruby-ivar">@seeAlso</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">also</span><span class="ruby-operator">|</span>
+290: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">alsoStr</span>.<span class="ruby-identifier">empty?</span>
+291: <span class="ruby-identifier">alsoStr</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">', '</span>
+292: <span class="ruby-keyword kw">end</span>
+293: <span class="ruby-identifier">alsoStr</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">also</span>.<span class="ruby-identifier">keyword</span>
+294: <span class="ruby-keyword kw">end</span>
+295: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">tagW</span>, <span class="ruby-identifier">alsoStr</span>, <span class="ruby-identifier">textW</span>)
+296: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">"\n"</span>
+297: <span class="ruby-keyword kw">end</span>
+298:
+299: <span class="ruby-comment cmt"># str += "Rule: #{@rule.name}\n" if @rule</span>
+300: <span class="ruby-comment cmt"># str += "Pattern: #{@pattern.tokens.join(' ')}\n" if @pattern</span>
+301: <span class="ruby-identifier">str</span>
+302: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1543,19 +1552,19 @@
<div class="method-source-code"
id="check-eference-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 505</span>
-505: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">checkReference</span>(<span class="ruby-identifier">pattern</span>)
-506: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">keyword</span>.<span class="ruby-identifier">nil?</span>
-507: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">"Pattern #{pattern} is undocumented but referenced by "</span> <span class="ruby-operator">+</span>
-508: <span class="ruby-node">"#{@keyword}."</span>
-509: <span class="ruby-keyword kw">false</span>
-510: <span class="ruby-keyword kw">end</span>
-511: <span class="ruby-keyword kw">true</span>
-512: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 509</span>
+509: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">checkReference</span>(<span class="ruby-identifier">pattern</span>)
+510: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">keyword</span>.<span class="ruby-identifier">nil?</span>
+511: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">"Pattern #{pattern} is undocumented but referenced by "</span> <span class="ruby-operator">+</span>
+512: <span class="ruby-node">"#{@keyword}."</span>
+513: <span class="ruby-keyword kw">false</span>
+514: <span class="ruby-keyword kw">end</span>
+515: <span class="ruby-keyword kw">true</span>
+516: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1582,14 +1591,14 @@
<div class="method-source-code"
id="format-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 566</span>
-566: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">indent</span>, <span class="ruby-identifier">str</span>, <span class="ruby-identifier">width</span>)
-567: <span class="ruby-constant">TextFormatter</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">width</span>, <span class="ruby-identifier">indent</span>).<span class="ruby-identifier">format</span>(<span class="ruby-identifier">str</span>)[<span class="ruby-identifier">indent</span><span class="ruby-operator">..</span><span class="ruby-value">1</span>]
-568: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 570</span>
+570: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">format</span>(<span class="ruby-identifier">indent</span>, <span class="ruby-identifier">str</span>, <span class="ruby-identifier">width</span>)
+571: <span class="ruby-constant">TextFormatter</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">width</span>, <span class="ruby-identifier">indent</span>).<span class="ruby-identifier">format</span>(<span class="ruby-identifier">str</span>)[<span class="ruby-identifier">indent</span><span class="ruby-operator">..</span><span class="ruby-value">1</span>]
+572: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1618,18 +1627,18 @@
<div class="method-source-code"
id="generate-avigation-ar-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 519</span>
-519: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateHTMLNavigationBar</span>
-520: <span class="ruby-ivar">@manual</span>.<span class="ruby-identifier">generateHTMLNavigationBar</span>(
-521: <span class="ruby-ivar">@predecessor</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@predecessor</span>.<span class="ruby-identifier">title</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>,
-522: <span class="ruby-ivar">@predecessor</span> <span class="ruby-operator">?</span> <span class="ruby-node">"#{@predecessor.keyword}.html"</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>,
-523: <span class="ruby-ivar">@successor</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@successor</span>.<span class="ruby-identifier">title</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>,
-524: <span class="ruby-ivar">@successor</span> <span class="ruby-operator">?</span> <span class="ruby-node">"#{@successor.keyword}.html"</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>)
-525: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 523</span>
+523: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateHTMLNavigationBar</span>
+524: <span class="ruby-ivar">@manual</span>.<span class="ruby-identifier">generateHTMLNavigationBar</span>(
+525: <span class="ruby-ivar">@predecessor</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@predecessor</span>.<span class="ruby-identifier">title</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>,
+526: <span class="ruby-ivar">@predecessor</span> <span class="ruby-operator">?</span> <span class="ruby-node">"#{@predecessor.keyword}.html"</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>,
+527: <span class="ruby-ivar">@successor</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@successor</span>.<span class="ruby-identifier">title</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>,
+528: <span class="ruby-ivar">@successor</span> <span class="ruby-operator">?</span> <span class="ruby-node">"#{@successor.keyword}.html"</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>)
+529: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1656,14 +1665,14 @@
<div class="method-source-code"
id="indent-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 514</span>
-514: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">indent</span>(<span class="ruby-identifier">width</span>, <span class="ruby-identifier">str</span>)
-515: <span class="ruby-constant">TextFormatter</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">80</span>, <span class="ruby-identifier">width</span>).<span class="ruby-identifier">indent</span>(<span class="ruby-identifier">str</span>)[<span class="ruby-identifier">width</span><span class="ruby-operator">..</span><span class="ruby-value">1</span>]
-516: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 518</span>
+518: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">indent</span>(<span class="ruby-identifier">width</span>, <span class="ruby-identifier">str</span>)
+519: <span class="ruby-constant">TextFormatter</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">80</span>, <span class="ruby-identifier">width</span>).<span class="ruby-identifier">indent</span>(<span class="ruby-identifier">str</span>)[<span class="ruby-identifier">width</span><span class="ruby-operator">..</span><span class="ruby-value">1</span>]
+520: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1692,15 +1701,15 @@
<div class="method-source-code"
id="keyword-ef-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 528</span>
-528: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">parent</span>, <span class="ruby-identifier">keyword</span>)
-529: <span class="ruby-identifier">parent</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">keyword</span>.<span class="ruby-identifier">title</span>,
-530: <span class="ruby-value str">'a'</span>, <span class="ruby-value str">'href'</span> =<span class="ruby-operator">></span> <span class="ruby-node">"#{keyword.keyword}.html"</span>)
-531: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 532</span>
+532: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">parent</span>, <span class="ruby-identifier">keyword</span>)
+533: <span class="ruby-identifier">parent</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">keyword</span>.<span class="ruby-identifier">title</span>,
+534: <span class="ruby-value str">'a'</span>, <span class="ruby-value str">'href'</span> =<span class="ruby-operator">></span> <span class="ruby-node">"#{keyword.keyword}.html"</span>)
+535: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1733,26 +1742,26 @@
<div class="method-source-code"
id="list-ttributes-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 550</span>
-550: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">listHTMLAttributes</span>(<span class="ruby-identifier">list</span>, <span class="ruby-identifier">width</span>)
-551: <span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>,
-552: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-node">"width:#{width}%"</span>)
-553: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
-554: <span class="ruby-identifier">list</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attr</span><span class="ruby-operator">|</span>
-555: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">first</span>
-556: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
-557: <span class="ruby-keyword kw">else</span>
-558: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">', '</span>)
-559: <span class="ruby-keyword kw">end</span>
-560: <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">td</span>, <span class="ruby-identifier">attr</span>)
-561: <span class="ruby-keyword kw">end</span>
-562:
-563: <span class="ruby-identifier">td</span>
-564: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 554</span>
+554: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">listHTMLAttributes</span>(<span class="ruby-identifier">list</span>, <span class="ruby-identifier">width</span>)
+555: <span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'descr'</span>,
+556: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-node">"width:#{width}%"</span>)
+557: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
+558: <span class="ruby-identifier">list</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attr</span><span class="ruby-operator">|</span>
+559: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">first</span>
+560: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
+561: <span class="ruby-keyword kw">else</span>
+562: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">', '</span>)
+563: <span class="ruby-keyword kw">end</span>
+564: <span class="ruby-identifier">keywordHTMLRef</span>(<span class="ruby-identifier">td</span>, <span class="ruby-identifier">attr</span>)
+565: <span class="ruby-keyword kw">end</span>
+566:
+567: <span class="ruby-identifier">td</span>
+568: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>
@@ -1784,19 +1793,19 @@
<div class="method-source-code"
id="new-ich-ext-source">
<pre>
- <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 536</span>
-536: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">newRichText</span>(<span class="ruby-identifier">text</span>)
-537: <span class="ruby-identifier">rText</span> = <span class="ruby-constant">RichText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">text</span>, [], <span class="ruby-ivar">@messageHandler</span>)
-538: <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">rti</span> = <span class="ruby-identifier">rText</span>.<span class="ruby-identifier">generateIntermediateFormat</span>)
-539: <span class="ruby-ivar">@messageHandler</span>.<span class="ruby-identifier">error</span>(<span class="ruby-value str">'rich_text'</span>,
-540: <span class="ruby-node">"Error in RichText of rule #{@keyword}"</span>)
-541: <span class="ruby-keyword kw">end</span>
-542: <span class="ruby-ivar">@references</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">rti</span>.<span class="ruby-identifier">internalReferences</span>
-543: <span class="ruby-identifier">rti</span>
-544: <span class="ruby-keyword kw">end</span></pre>
+ <span class="ruby-comment cmt"># File lib/KeywordDocumentation.rb, line 540</span>
+540: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">newRichText</span>(<span class="ruby-identifier">text</span>)
+541: <span class="ruby-identifier">rText</span> = <span class="ruby-constant">RichText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">text</span>, [], <span class="ruby-ivar">@messageHandler</span>)
+542: <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">rti</span> = <span class="ruby-identifier">rText</span>.<span class="ruby-identifier">generateIntermediateFormat</span>)
+543: <span class="ruby-ivar">@messageHandler</span>.<span class="ruby-identifier">error</span>(<span class="ruby-value str">'rich_text'</span>,
+544: <span class="ruby-node">"Error in RichText of rule #{@keyword}"</span>)
+545: <span class="ruby-keyword kw">end</span>
+546: <span class="ruby-ivar">@references</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">rti</span>.<span class="ruby-identifier">internalReferences</span>
+547: <span class="ruby-identifier">rti</span>
+548: <span class="ruby-keyword kw">end</span></pre>
</div>
</div>