taskjuggler 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (495) hide show
  1. data/benchmarks/UTF-8-Strings.rb +58 -0
  2. data/data/css/tjmanual.css +52 -0
  3. data/data/css/tjreport.css +195 -0
  4. data/data/icons/details.png +0 -0
  5. data/data/icons/flag-green.png +0 -0
  6. data/data/icons/flag-red.png +0 -0
  7. data/data/icons/flag-yellow.png +0 -0
  8. data/data/icons/resource.png +0 -0
  9. data/data/icons/resourcegroup.png +0 -0
  10. data/data/icons/task.png +0 -0
  11. data/data/icons/taskgroup.png +0 -0
  12. data/data/icons/trend-down.png +0 -0
  13. data/data/icons/trend-flat.png +0 -0
  14. data/data/icons/trend-up.png +0 -0
  15. data/data/scripts/wz_tooltip.js +1301 -0
  16. data/doc/classes/AppConfig.html +298 -230
  17. data/doc/classes/Arguments.html +8 -8
  18. data/doc/classes/Object.html +7 -7
  19. data/doc/classes/String.html +89 -89
  20. data/doc/classes/TaskJuggler.html +396 -264
  21. data/doc/classes/TaskJuggler/Account.html +18 -18
  22. data/doc/classes/TaskJuggler/AccountAttribute.html +26 -26
  23. data/doc/classes/TaskJuggler/AccountScenario.html +12 -12
  24. data/doc/classes/TaskJuggler/Allocation.html +30 -30
  25. data/doc/classes/TaskJuggler/AllocationAttribute.html +26 -26
  26. data/doc/classes/TaskJuggler/AttributeBase.html +227 -115
  27. data/doc/classes/TaskJuggler/AttributeDefinition.html +6 -6
  28. data/doc/classes/TaskJuggler/BatchProcessor.html +117 -83
  29. data/doc/classes/TaskJuggler/Booking.html +18 -18
  30. data/doc/classes/TaskJuggler/BookingListAttribute.html +26 -26
  31. data/doc/classes/TaskJuggler/BooleanAttribute.html +26 -26
  32. data/doc/classes/TaskJuggler/CSVFile.html +24 -24
  33. data/doc/classes/TaskJuggler/CellSettingPattern.html +201 -0
  34. data/doc/classes/TaskJuggler/CellSettingPatternList.html +253 -0
  35. data/doc/classes/TaskJuggler/Charge.html +18 -18
  36. data/doc/classes/TaskJuggler/ChargeListAttribute.html +20 -20
  37. data/doc/classes/TaskJuggler/ChargeSet.html +37 -37
  38. data/doc/classes/TaskJuggler/ChargeSetListAttribute.html +26 -26
  39. data/doc/classes/TaskJuggler/ColumnListAttribute.html +20 -20
  40. data/doc/classes/TaskJuggler/ColumnTable.html +40 -40
  41. data/doc/classes/TaskJuggler/DateAttribute.html +54 -15
  42. data/doc/classes/TaskJuggler/DefinitionListAttribute.html +10 -10
  43. data/doc/classes/TaskJuggler/DependencyListAttribute.html +47 -47
  44. data/doc/classes/TaskJuggler/DurationAttribute.html +30 -30
  45. data/doc/classes/TaskJuggler/FixnumAttribute.html +20 -20
  46. data/doc/classes/TaskJuggler/FlagListAttribute.html +43 -43
  47. data/doc/classes/TaskJuggler/FloatAttribute.html +30 -30
  48. data/doc/classes/TaskJuggler/FormatListAttribute.html +21 -21
  49. data/doc/classes/TaskJuggler/GanttChart.html +48 -48
  50. data/doc/classes/TaskJuggler/GanttContainer.html +42 -42
  51. data/doc/classes/TaskJuggler/GanttHeader.html +12 -12
  52. data/doc/classes/TaskJuggler/GanttHeaderScaleItem.html +12 -12
  53. data/doc/classes/TaskJuggler/GanttLine.html +24 -24
  54. data/doc/classes/TaskJuggler/GanttLoadStack.html +18 -18
  55. data/doc/classes/TaskJuggler/GanttMilestone.html +42 -42
  56. data/doc/classes/TaskJuggler/GanttRouter.html +24 -24
  57. data/doc/classes/TaskJuggler/GanttTaskBar.html +42 -42
  58. data/doc/classes/TaskJuggler/HTMLDocument.html +13 -13
  59. data/doc/classes/TaskJuggler/HTMLGraphics.html +12 -12
  60. data/doc/classes/TaskJuggler/Interval.html +57 -57
  61. data/doc/classes/TaskJuggler/IntervalListAttribute.html +47 -47
  62. data/doc/classes/TaskJuggler/JobInfo.html +68 -12
  63. data/doc/classes/TaskJuggler/Journal.html +266 -20
  64. data/doc/classes/TaskJuggler/JournalEntry.html +79 -23
  65. data/doc/classes/TaskJuggler/JournalEntryList.html +454 -0
  66. data/doc/classes/TaskJuggler/KeywordArray.html +10 -10
  67. data/doc/classes/TaskJuggler/KeywordDocumentation.html +171 -170
  68. data/doc/classes/TaskJuggler/Limits.html +36 -36
  69. data/doc/classes/TaskJuggler/Limits/Limit.html +30 -30
  70. data/doc/classes/TaskJuggler/LimitsAttribute.html +40 -40
  71. data/doc/classes/TaskJuggler/ListAttributeBase.html +20 -20
  72. data/doc/classes/TaskJuggler/Log.html +145 -107
  73. data/doc/classes/TaskJuggler/LogicalAttribute.html +65 -36
  74. data/doc/classes/TaskJuggler/LogicalExpression.html +61 -24
  75. data/doc/classes/TaskJuggler/LogicalExpressionAttribute.html +20 -20
  76. data/doc/classes/TaskJuggler/LogicalFlag.html +31 -51
  77. data/doc/classes/TaskJuggler/LogicalFunction.html +64 -53
  78. data/doc/classes/TaskJuggler/LogicalOperation.html +103 -55
  79. data/doc/classes/TaskJuggler/Macro.html +6 -6
  80. data/doc/classes/TaskJuggler/MacroParser.html +36 -36
  81. data/doc/classes/TaskJuggler/MacroTable.html +37 -37
  82. data/doc/classes/TaskJuggler/Message.html +12 -12
  83. data/doc/classes/TaskJuggler/MessageHandler.html +32 -20
  84. data/doc/classes/TaskJuggler/Navigator.html +110 -46
  85. data/doc/classes/TaskJuggler/NavigatorElement.html +449 -0
  86. data/doc/classes/TaskJuggler/OnShiftCache.html +24 -24
  87. data/doc/classes/TaskJuggler/Project.html +1158 -893
  88. data/doc/classes/TaskJuggler/ProjectFileParser.html +94 -91
  89. data/doc/classes/TaskJuggler/PropertyAttribute.html +20 -20
  90. data/doc/classes/TaskJuggler/PropertyList.html +225 -155
  91. data/doc/classes/TaskJuggler/PropertySet.html +375 -332
  92. data/doc/classes/TaskJuggler/PropertyTreeNode.html +750 -510
  93. data/doc/classes/TaskJuggler/Query.html +404 -139
  94. data/doc/classes/TaskJuggler/{RTPNavigator.html → RTFNavigator.html} +57 -56
  95. data/doc/classes/TaskJuggler/RTFQuery.html +343 -0
  96. data/doc/classes/TaskJuggler/{RTPReport.html → RTFReport.html} +70 -67
  97. data/doc/classes/TaskJuggler/RealFormat.html +18 -18
  98. data/doc/classes/TaskJuggler/RealFormatAttribute.html +10 -10
  99. data/doc/classes/TaskJuggler/ReferenceAttribute.html +107 -40
  100. data/doc/classes/TaskJuggler/RemoteServiceManager.html +335 -0
  101. data/doc/classes/TaskJuggler/Report.html +66 -64
  102. data/doc/classes/TaskJuggler/ReportBase.html +112 -123
  103. data/doc/classes/TaskJuggler/ReportContext.html +43 -38
  104. data/doc/classes/TaskJuggler/ReportServer.html +320 -0
  105. data/doc/classes/TaskJuggler/ReportTable.html +42 -42
  106. data/doc/classes/TaskJuggler/ReportTableCell.html +221 -129
  107. data/doc/classes/TaskJuggler/ReportTableColumn.html +27 -27
  108. data/doc/classes/TaskJuggler/ReportTableLegend.html +24 -24
  109. data/doc/classes/TaskJuggler/ReportTableLine.html +126 -80
  110. data/doc/classes/TaskJuggler/Resource.html +12 -12
  111. data/doc/classes/TaskJuggler/ResourceListAttribute.html +82 -47
  112. data/doc/classes/TaskJuggler/ResourceListRE.html +43 -39
  113. data/doc/classes/TaskJuggler/ResourceScenario.html +413 -321
  114. data/doc/classes/TaskJuggler/RichText.html +64 -248
  115. data/doc/classes/TaskJuggler/RichTextAttribute.html +94 -30
  116. data/doc/classes/TaskJuggler/RichTextDocument.html +87 -85
  117. data/doc/classes/TaskJuggler/RichTextElement.html +456 -363
  118. data/doc/classes/TaskJuggler/RichTextException.html +13 -13
  119. data/doc/classes/TaskJuggler/{RichTextProtocolExample.html → RichTextFunctionExample.html} +64 -63
  120. data/doc/classes/TaskJuggler/{RichTextProtocolHandler.html → RichTextFunctionHandler.html} +42 -36
  121. data/doc/classes/TaskJuggler/RichTextIntermediate.html +563 -0
  122. data/doc/classes/TaskJuggler/RichTextParser.html +54 -51
  123. data/doc/classes/TaskJuggler/RichTextScanner.html +94 -92
  124. data/doc/classes/TaskJuggler/RichTextSnip.html +96 -60
  125. data/doc/classes/TaskJuggler/RichTextSyntaxRules.html +369 -227
  126. data/doc/classes/TaskJuggler/Scenario.html +6 -6
  127. data/doc/classes/TaskJuggler/ScenarioData.html +37 -37
  128. data/doc/classes/TaskJuggler/ScenarioListAttribute.html +31 -31
  129. data/doc/classes/TaskJuggler/Scoreboard.html +66 -66
  130. data/doc/classes/TaskJuggler/Shift.html +18 -18
  131. data/doc/classes/TaskJuggler/ShiftAssignment.html +54 -54
  132. data/doc/classes/TaskJuggler/ShiftAssignments.html +78 -78
  133. data/doc/classes/TaskJuggler/ShiftAssignmentsAttribute.html +40 -40
  134. data/doc/classes/TaskJuggler/ShiftScenario.html +24 -24
  135. data/doc/classes/TaskJuggler/SortListAttribute.html +22 -22
  136. data/doc/classes/TaskJuggler/SourceFileInfo.html +12 -12
  137. data/doc/classes/TaskJuggler/StringAttribute.html +30 -30
  138. data/doc/classes/TaskJuggler/SymbolAttribute.html +20 -20
  139. data/doc/classes/TaskJuggler/SyntaxReference.html +42 -42
  140. data/doc/classes/TaskJuggler/TOCEntry.html +12 -12
  141. data/doc/classes/TaskJuggler/TSResourceRecord.html +197 -0
  142. data/doc/classes/TaskJuggler/TSTaskRecord.html +215 -0
  143. data/doc/classes/TaskJuggler/TableColumnDefinition.html +64 -43
  144. data/doc/classes/TaskJuggler/TableOfContents.html +18 -18
  145. data/doc/classes/TaskJuggler/TableReport.html +447 -468
  146. data/doc/classes/TaskJuggler/Task.html +12 -12
  147. data/doc/classes/TaskJuggler/TaskDependency.html +12 -12
  148. data/doc/classes/TaskJuggler/TaskListAttribute.html +47 -47
  149. data/doc/classes/TaskJuggler/TaskListRE.html +43 -39
  150. data/doc/classes/TaskJuggler/TaskScenario.html +529 -282
  151. data/doc/classes/TaskJuggler/TextParser.html +215 -194
  152. data/doc/classes/TaskJuggler/TextParser/Pattern.html +97 -97
  153. data/doc/classes/TaskJuggler/TextParser/Rule.html +84 -84
  154. data/doc/classes/TaskJuggler/TextParser/StackElement.html +16 -15
  155. data/doc/classes/TaskJuggler/TextParser/TextParserResultArray.html +12 -12
  156. data/doc/classes/TaskJuggler/TextParser/TokenDoc.html +6 -6
  157. data/doc/classes/TaskJuggler/TextReport.html +77 -74
  158. data/doc/classes/TaskJuggler/TextScanner.html +294 -281
  159. data/doc/classes/TaskJuggler/TextScanner/BufferStreamHandle.html +70 -70
  160. data/doc/classes/TaskJuggler/TextScanner/FileStreamHandle.html +59 -60
  161. data/doc/classes/TaskJuggler/TextScanner/StreamHandle.html +12 -12
  162. data/doc/classes/TaskJuggler/TimeSheetReport.html +406 -0
  163. data/doc/classes/TaskJuggler/TjException.html +6 -6
  164. data/doc/classes/TaskJuggler/TjTime.html +522 -513
  165. data/doc/classes/TaskJuggler/TjpExample.html +25 -25
  166. data/doc/classes/TaskJuggler/TjpExportRE.html +21 -24
  167. data/doc/classes/TaskJuggler/TjpSyntaxRules.html +6177 -4318
  168. data/doc/classes/TaskJuggler/UserManual.html +212 -213
  169. data/doc/classes/TaskJuggler/WorkingHours.html +49 -49
  170. data/doc/classes/TaskJuggler/WorkingHoursAttribute.html +53 -53
  171. data/doc/classes/TaskJuggler/XMLBlob.html +21 -21
  172. data/doc/classes/TaskJuggler/XMLComment.html +21 -21
  173. data/doc/classes/TaskJuggler/XMLDocument.html +27 -26
  174. data/doc/classes/TaskJuggler/XMLElement.html +86 -50
  175. data/doc/classes/TaskJuggler/XMLNamedText.html +11 -11
  176. data/doc/classes/TaskJuggler/XMLText.html +36 -36
  177. data/doc/files/COPYING.html +1 -1
  178. data/doc/files/README.html +1 -1
  179. data/doc/files/lib/AccountScenario_rb.html +3 -2
  180. data/doc/files/lib/Account_rb.html +3 -2
  181. data/doc/files/lib/Allocation_rb.html +3 -2
  182. data/doc/files/lib/AppConfig_rb.html +5 -2
  183. data/doc/files/lib/AttributeBase_rb.html +3 -2
  184. data/doc/files/lib/AttributeDefinition_rb.html +3 -2
  185. data/doc/files/lib/Attributes_rb.html +3 -2
  186. data/doc/files/lib/BatchProcessor_rb.html +4 -3
  187. data/doc/files/lib/Booking_rb.html +3 -2
  188. data/doc/files/lib/ChargeSet_rb.html +3 -2
  189. data/doc/files/lib/Charge_rb.html +3 -2
  190. data/doc/files/lib/HTMLDocument_rb.html +3 -2
  191. data/doc/files/lib/Interval_rb.html +3 -2
  192. data/doc/files/lib/Journal_rb.html +4 -3
  193. data/doc/files/lib/KeywordArray_rb.html +3 -2
  194. data/doc/files/lib/KeywordDocumentation_rb.html +3 -2
  195. data/doc/files/lib/Limits_rb.html +3 -2
  196. data/doc/files/lib/Log_rb.html +3 -2
  197. data/doc/files/lib/LogicalExpression_rb.html +3 -2
  198. data/doc/files/lib/LogicalFunction_rb.html +3 -2
  199. data/doc/files/lib/LogicalOperation_rb.html +3 -2
  200. data/doc/files/lib/MacroParser_rb.html +3 -2
  201. data/doc/files/lib/MacroTable_rb.html +3 -2
  202. data/doc/files/lib/MessageHandler_rb.html +3 -2
  203. data/doc/files/lib/Message_rb.html +3 -2
  204. data/doc/files/lib/ProjectFileParser_rb.html +7 -4
  205. data/doc/files/lib/Project_rb.html +3 -2
  206. data/doc/files/lib/PropertyList_rb.html +3 -2
  207. data/doc/files/lib/PropertySet_rb.html +3 -2
  208. data/doc/files/lib/PropertyTreeNode_rb.html +3 -2
  209. data/doc/files/lib/Query_rb.html +3 -2
  210. data/doc/files/lib/{RTPNavigator_rb.html → RTFNavigator_rb.html} +8 -7
  211. data/doc/files/lib/RTFQuery_rb.html +121 -0
  212. data/doc/files/lib/{RTPReport_rb.html → RTFReport_rb.html} +8 -7
  213. data/doc/files/lib/RealFormat_rb.html +3 -2
  214. data/doc/files/lib/RemoteServiceManager_rb.html +117 -0
  215. data/doc/files/lib/ReportServer_rb.html +107 -0
  216. data/doc/files/lib/ResourceScenario_rb.html +3 -2
  217. data/doc/files/lib/Resource_rb.html +3 -2
  218. data/doc/files/lib/RichTextDocument_rb.html +4 -3
  219. data/doc/files/lib/RichTextElement_rb.html +3 -2
  220. data/doc/files/lib/{RichTextProtocolExample_rb.html → RichTextFunctionExample_rb.html} +8 -7
  221. data/doc/files/lib/{RichTextProtocolHandler_rb.html → RichTextFunctionHandler_rb.html} +7 -6
  222. data/doc/files/lib/RichTextParser_rb.html +3 -2
  223. data/doc/files/lib/RichTextScanner_rb.html +3 -2
  224. data/doc/files/lib/RichTextSnip_rb.html +3 -2
  225. data/doc/files/lib/RichTextSyntaxRules_rb.html +3 -2
  226. data/doc/files/lib/RichText_rb.html +3 -2
  227. data/doc/files/lib/ScenarioData_rb.html +3 -2
  228. data/doc/files/lib/Scenario_rb.html +3 -2
  229. data/doc/files/lib/Scoreboard_rb.html +3 -2
  230. data/doc/files/lib/ShiftAssignments_rb.html +3 -2
  231. data/doc/files/lib/ShiftScenario_rb.html +3 -2
  232. data/doc/files/lib/Shift_rb.html +3 -2
  233. data/doc/files/lib/SourceFileInfo_rb.html +3 -2
  234. data/doc/files/lib/SyntaxReference_rb.html +3 -2
  235. data/doc/files/lib/TOCEntry_rb.html +3 -2
  236. data/doc/files/lib/TableColumnDefinition_rb.html +3 -2
  237. data/doc/files/lib/TableOfContents_rb.html +3 -2
  238. data/doc/files/lib/TaskDependency_rb.html +3 -2
  239. data/doc/files/lib/TaskJuggler_rb.html +7 -2
  240. data/doc/files/lib/TaskScenario_rb.html +3 -2
  241. data/doc/files/lib/Task_rb.html +3 -2
  242. data/doc/files/lib/TextParser/Pattern_rb.html +4 -3
  243. data/doc/files/lib/TextParser/Rule_rb.html +4 -3
  244. data/doc/files/lib/TextParser/StackElement_rb.html +4 -3
  245. data/doc/files/lib/TextParser/TokenDoc_rb.html +4 -3
  246. data/doc/files/lib/TextParser_rb.html +3 -2
  247. data/doc/files/lib/TextScanner_rb.html +3 -2
  248. data/doc/files/lib/Tj3Config_rb.html +3 -2
  249. data/doc/files/lib/TjException_rb.html +3 -2
  250. data/doc/files/lib/TjTime_rb.html +3 -2
  251. data/doc/files/lib/TjpExample_rb.html +3 -2
  252. data/doc/files/lib/TjpSyntaxRules_rb.html +3 -2
  253. data/doc/files/lib/UTF8String_rb.html +14 -6
  254. data/doc/files/lib/UserManual_rb.html +6 -3
  255. data/doc/files/lib/WorkingHours_rb.html +3 -2
  256. data/doc/files/lib/XMLDocument_rb.html +3 -2
  257. data/doc/files/lib/XMLElement_rb.html +3 -2
  258. data/doc/files/lib/deep_copy_rb.html +3 -2
  259. data/doc/files/lib/reports/CSVFile_rb.html +3 -2
  260. data/doc/files/lib/reports/ColumnTable_rb.html +3 -2
  261. data/doc/files/lib/reports/GanttChart_rb.html +3 -2
  262. data/doc/files/lib/reports/GanttContainer_rb.html +3 -2
  263. data/doc/files/lib/reports/GanttHeaderScaleItem_rb.html +3 -2
  264. data/doc/files/lib/reports/GanttHeader_rb.html +3 -2
  265. data/doc/files/lib/reports/GanttLine_rb.html +3 -2
  266. data/doc/files/lib/reports/GanttLoadStack_rb.html +3 -2
  267. data/doc/files/lib/reports/GanttMilestone_rb.html +3 -2
  268. data/doc/files/lib/reports/GanttRouter_rb.html +3 -2
  269. data/doc/files/lib/reports/GanttTaskBar_rb.html +3 -2
  270. data/doc/files/lib/reports/HTMLGraphics_rb.html +3 -2
  271. data/doc/files/lib/reports/Navigator_rb.html +3 -2
  272. data/doc/files/lib/reports/ReportBase_rb.html +3 -2
  273. data/doc/files/lib/reports/ReportContext_rb.html +3 -2
  274. data/doc/files/lib/reports/ReportTableCell_rb.html +3 -2
  275. data/doc/files/lib/reports/ReportTableColumn_rb.html +3 -2
  276. data/doc/files/lib/reports/ReportTableLegend_rb.html +3 -2
  277. data/doc/files/lib/reports/ReportTableLine_rb.html +3 -2
  278. data/doc/files/lib/reports/ReportTable_rb.html +3 -2
  279. data/doc/files/lib/reports/Report_rb.html +7 -2
  280. data/doc/files/lib/reports/ResourceListRE_rb.html +3 -2
  281. data/doc/files/lib/reports/TableReport_rb.html +3 -2
  282. data/doc/files/lib/reports/TaskListRE_rb.html +3 -2
  283. data/doc/files/lib/reports/TextReport_rb.html +4 -3
  284. data/doc/files/lib/reports/TimeSheetReport_rb.html +117 -0
  285. data/doc/files/lib/reports/TjpExportRE_rb.html +3 -2
  286. data/doc/files/lib/taskjuggler3_rb.html +94 -77
  287. data/doc/files/lib/tj3client_rb.html +280 -0
  288. data/doc/files/lib/tj3man_rb.html +10 -9
  289. data/doc/fr_class_index.html +27 -5
  290. data/doc/fr_file_index.html +15 -7
  291. data/doc/fr_method_index.html +1312 -1020
  292. data/examples/tutorial.tjp +113 -14
  293. data/gem_spec.rb +2 -1
  294. data/lib/Account.rb +1 -1
  295. data/lib/AccountScenario.rb +1 -1
  296. data/lib/Allocation.rb +1 -1
  297. data/lib/AppConfig.rb +23 -10
  298. data/lib/AttributeBase.rb +34 -6
  299. data/lib/AttributeDefinition.rb +1 -1
  300. data/lib/Attributes.rb +51 -16
  301. data/lib/BatchProcessor.rb +204 -77
  302. data/lib/Booking.rb +1 -1
  303. data/lib/Charge.rb +1 -1
  304. data/lib/ChargeSet.rb +1 -1
  305. data/lib/HTMLDocument.rb +2 -2
  306. data/lib/Interval.rb +1 -1
  307. data/lib/Journal.rb +231 -9
  308. data/lib/KeywordArray.rb +1 -1
  309. data/lib/KeywordDocumentation.rb +6 -4
  310. data/lib/Limits.rb +1 -1
  311. data/lib/Log.rb +8 -1
  312. data/lib/LogicalExpression.rb +14 -13
  313. data/lib/LogicalFunction.rb +88 -14
  314. data/lib/LogicalOperation.rb +124 -53
  315. data/lib/MacroParser.rb +1 -1
  316. data/lib/MacroTable.rb +2 -2
  317. data/lib/Message.rb +1 -1
  318. data/lib/MessageHandler.rb +7 -3
  319. data/lib/Project.rb +93 -14
  320. data/lib/ProjectFileParser.rb +30 -15
  321. data/lib/PropertyList.rb +103 -36
  322. data/lib/PropertySet.rb +22 -10
  323. data/lib/PropertyTreeNode.rb +120 -15
  324. data/lib/Query.rb +119 -48
  325. data/lib/{RTPNavigator.rb → RTFNavigator.rb} +11 -10
  326. data/lib/RTFQuery.rb +166 -0
  327. data/lib/{RTPReport.rb → RTFReport.rb} +11 -8
  328. data/lib/RealFormat.rb +1 -1
  329. data/lib/RemoteServiceManager.rb +80 -0
  330. data/lib/ReportServer.rb +66 -0
  331. data/lib/Resource.rb +1 -1
  332. data/lib/ResourceScenario.rb +48 -19
  333. data/lib/RichText.rb +98 -41
  334. data/lib/RichTextDocument.rb +10 -8
  335. data/lib/RichTextElement.rb +72 -28
  336. data/lib/{RichTextProtocolExample.rb → RichTextFunctionExample.rb} +8 -7
  337. data/lib/{RichTextProtocolHandler.rb → RichTextFunctionHandler.rb} +12 -14
  338. data/lib/RichTextParser.rb +6 -3
  339. data/lib/RichTextScanner.rb +91 -19
  340. data/lib/RichTextSnip.rb +8 -3
  341. data/lib/RichTextSyntaxRules.rb +103 -45
  342. data/lib/Scenario.rb +1 -1
  343. data/lib/ScenarioData.rb +2 -2
  344. data/lib/Scoreboard.rb +1 -1
  345. data/lib/Shift.rb +1 -1
  346. data/lib/ShiftAssignments.rb +1 -1
  347. data/lib/ShiftScenario.rb +1 -1
  348. data/lib/SourceFileInfo.rb +1 -1
  349. data/lib/SyntaxReference.rb +2 -2
  350. data/lib/TOCEntry.rb +1 -1
  351. data/lib/TableColumnDefinition.rb +59 -16
  352. data/lib/TableOfContents.rb +1 -1
  353. data/lib/Task.rb +1 -1
  354. data/lib/TaskDependency.rb +1 -1
  355. data/lib/TaskJuggler.rb +31 -8
  356. data/lib/TaskScenario.rb +165 -16
  357. data/lib/TextParser.rb +36 -22
  358. data/lib/TextParser/Pattern.rb +3 -3
  359. data/lib/TextParser/Rule.rb +2 -2
  360. data/lib/TextParser/StackElement.rb +4 -3
  361. data/lib/TextParser/TokenDoc.rb +2 -2
  362. data/lib/TextScanner.rb +52 -37
  363. data/lib/Tj3Config.rb +6 -5
  364. data/lib/TjException.rb +1 -1
  365. data/lib/TjTime.rb +12 -3
  366. data/lib/TjpExample.rb +1 -1
  367. data/lib/TjpSyntaxRules.rb +1044 -150
  368. data/lib/UTF8String.rb +2 -1
  369. data/lib/UserManual.rb +18 -70
  370. data/lib/WorkingHours.rb +3 -3
  371. data/lib/XMLDocument.rb +3 -2
  372. data/lib/XMLElement.rb +6 -1
  373. data/lib/deep_copy.rb +1 -1
  374. data/lib/reports/CSVFile.rb +1 -1
  375. data/lib/reports/ColumnTable.rb +9 -9
  376. data/lib/reports/GanttChart.rb +1 -1
  377. data/lib/reports/GanttContainer.rb +1 -1
  378. data/lib/reports/GanttHeader.rb +1 -1
  379. data/lib/reports/GanttHeaderScaleItem.rb +1 -1
  380. data/lib/reports/GanttLine.rb +40 -40
  381. data/lib/reports/GanttLoadStack.rb +1 -1
  382. data/lib/reports/GanttMilestone.rb +1 -1
  383. data/lib/reports/GanttRouter.rb +1 -1
  384. data/lib/reports/GanttTaskBar.rb +1 -1
  385. data/lib/reports/HTMLGraphics.rb +1 -1
  386. data/lib/reports/Navigator.rb +149 -22
  387. data/lib/reports/Report.rb +115 -172
  388. data/lib/reports/ReportBase.rb +22 -27
  389. data/lib/reports/ReportContext.rb +29 -15
  390. data/lib/reports/ReportTable.rb +1 -1
  391. data/lib/reports/ReportTableCell.rb +120 -27
  392. data/lib/reports/ReportTableColumn.rb +3 -3
  393. data/lib/reports/ReportTableLegend.rb +1 -1
  394. data/lib/reports/ReportTableLine.rb +10 -2
  395. data/lib/reports/ResourceListRE.rb +5 -1
  396. data/lib/reports/TableReport.rb +237 -287
  397. data/lib/reports/TaskListRE.rb +5 -1
  398. data/lib/reports/TextReport.rb +7 -4
  399. data/lib/reports/TimeSheetReport.rb +233 -0
  400. data/lib/reports/TjpExportRE.rb +2 -2
  401. data/lib/taskjuggler3.rb +27 -11
  402. data/lib/tj3client.rb +110 -0
  403. data/lib/tj3man.rb +4 -4
  404. data/manual/Getting_Started +0 -50
  405. data/manual/How_To_Contribute +6 -13
  406. data/manual/Installation +102 -28
  407. data/manual/Intro +11 -1
  408. data/manual/Reporting_Bugs +23 -7
  409. data/manual/Rich_Text_Attributes +59 -6
  410. data/manual/TaskJuggler_2x_Migration +27 -0
  411. data/manual/The_TaskJuggler_Syntax +104 -0
  412. data/manual/Tutorial +10 -9
  413. data/prj_cfg.rb +8 -2
  414. data/tasks/csts.rake +1 -1
  415. data/tasks/manual.rake +5 -3
  416. data/test/MessageChecker.rb +1 -1
  417. data/test/TestSuite/HTML-Reports/Alerts.html +172 -0
  418. data/test/TestSuite/HTML-Reports/Alerts.tjp +77 -0
  419. data/test/TestSuite/HTML-Reports/CellText.html +758 -0
  420. data/test/TestSuite/HTML-Reports/CellText.tjp +75 -0
  421. data/test/TestSuite/HTML-Reports/ColumnPeriods.html +156 -0
  422. data/test/TestSuite/HTML-Reports/ColumnPeriods.tjp +44 -0
  423. data/test/TestSuite/HTML-Reports/IsOngoing.html +172 -0
  424. data/test/TestSuite/HTML-Reports/IsOngoing.tjp +34 -0
  425. data/test/TestSuite/HTML-Reports/LogicalFunctions.html +80 -0
  426. data/test/TestSuite/HTML-Reports/LogicalFunctions.tjp +20 -0
  427. data/test/TestSuite/HTML-Reports/Query.html +31 -0
  428. data/test/TestSuite/HTML-Reports/Query.tjp +28 -0
  429. data/test/TestSuite/HTML-Reports/Sorting.tjp +68 -0
  430. data/test/TestSuite/HTML-Reports/TimeSheet.tjp +69 -0
  431. data/test/TestSuite/HTML-Reports/UDAQuery.tjp +27 -0
  432. data/test/TestSuite/HTML-Reports/css/tjmanual.css +52 -0
  433. data/test/TestSuite/HTML-Reports/css/tjreport.css +195 -0
  434. data/test/TestSuite/HTML-Reports/depArrows.html +842 -0
  435. data/test/TestSuite/HTML-Reports/icons/details.png +0 -0
  436. data/test/TestSuite/HTML-Reports/icons/flag-green.png +0 -0
  437. data/test/TestSuite/HTML-Reports/icons/flag-red.png +0 -0
  438. data/test/TestSuite/HTML-Reports/icons/flag-yellow.png +0 -0
  439. data/test/TestSuite/HTML-Reports/icons/resource.png +0 -0
  440. data/test/TestSuite/HTML-Reports/icons/resourcegroup.png +0 -0
  441. data/test/TestSuite/HTML-Reports/icons/task.png +0 -0
  442. data/test/TestSuite/HTML-Reports/icons/taskgroup.png +0 -0
  443. data/test/TestSuite/HTML-Reports/reference.tjp +7 -8
  444. data/test/TestSuite/HTML-Reports/scripts/scripts/wz_tooltip.js +1301 -0
  445. data/test/TestSuite/HTML-Reports/scripts/wz_tooltip.js +1301 -0
  446. data/test/TestSuite/Scheduler/Correct/Mandatory.tjp +34 -0
  447. data/test/TestSuite/Syntax/Correct/Celltext.tjp +2 -1
  448. data/test/TestSuite/Syntax/Correct/Journal.tjp +2 -2
  449. data/test/TestSuite/Syntax/Correct/LogicalExpression.tjp +2 -1
  450. data/test/TestSuite/Syntax/Correct/LogicalFunction.tjp +20 -0
  451. data/test/TestSuite/Syntax/Correct/Query.tjp +18 -0
  452. data/test/TestSuite/Syntax/Correct/StatusSheet.tjp +45 -0
  453. data/test/TestSuite/Syntax/Correct/TimeSheet.tjp +49 -0
  454. data/test/TestSuite/Syntax/Correct/icons/details.png +0 -0
  455. data/test/TestSuite/Syntax/Correct/icons/flag-green.png +0 -0
  456. data/test/TestSuite/Syntax/Correct/icons/flag-red.png +0 -0
  457. data/test/TestSuite/Syntax/Correct/icons/flag-yellow.png +0 -0
  458. data/test/TestSuite/Syntax/Correct/icons/resource.png +0 -0
  459. data/test/TestSuite/Syntax/Correct/icons/resourcegroup.png +0 -0
  460. data/test/TestSuite/Syntax/Correct/icons/task.png +0 -0
  461. data/test/TestSuite/Syntax/Correct/icons/taskgroup.png +0 -0
  462. data/test/TestSuite/Syntax/Correct/scripts/wz_tooltip.js +1301 -0
  463. data/test/TestSuite/Syntax/Correct/tutorial.tjp +113 -14
  464. data/test/TestSuite/Syntax/Errors/macro_stack_overflow.tjp +28 -0
  465. data/test/TestSuite/Syntax/Errors/unsupported_token.tjp +12 -0
  466. data/test/all.rb +2 -2
  467. data/test/test_BatchProcessor.rb +42 -13
  468. data/test/test_CSV-Reports.rb +1 -1
  469. data/test/test_Journal.rb +176 -0
  470. data/test/test_Limits.rb +1 -1
  471. data/test/test_LogicalExpression.rb +14 -5
  472. data/test/test_MacroTable.rb +1 -1
  473. data/test/test_Project.rb +1 -1
  474. data/test/test_PropertySet.rb +1 -1
  475. data/test/test_Query.rb +1 -1
  476. data/test/test_RealFormat.rb +1 -1
  477. data/test/test_RichText.rb +30 -20
  478. data/test/test_Scheduler.rb +1 -1
  479. data/test/test_ShiftAssignments.rb +2 -2
  480. data/test/test_Syntax.rb +1 -1
  481. data/test/test_TextScanner.rb +1 -1
  482. data/test/test_TjTime.rb +1 -1
  483. data/test/test_TjpExample.rb +1 -1
  484. data/test/test_UTF8String.rb +1 -1
  485. data/test/test_WorkingHours.rb +1 -1
  486. data/test/test_deep_copy.rb +2 -2
  487. metadata +610 -532
  488. data/doc/files/lib/ms_test_rb.html +0 -90
  489. data/examples/ContactList.html +0 -1467
  490. data/examples/Deliveries.html +0 -485
  491. data/examples/Development.html +0 -2525
  492. data/examples/Overview.html +0 -747
  493. data/examples/Resource Graph.html +0 -616
  494. data/lib/ms_test.rb +0 -27
  495. data/test/TestSuite/HTML-Reports/reference-export.html +0 -187
@@ -53,9 +53,9 @@
53
53
  <td>
54
54
 
55
55
 
56
- <a href="../../files/lib/TextParser/StackElement_rb.html">
56
+ <a href="../../files/lib/TextParser_rb.html">
57
57
 
58
- lib/TextParser/StackElement.rb
58
+ lib/TextParser.rb
59
59
 
60
60
  </a>
61
61
 
@@ -63,9 +63,9 @@
63
63
  <br />
64
64
 
65
65
 
66
- <a href="../../files/lib/TextParser/TokenDoc_rb.html">
66
+ <a href="../../files/lib/TextParser/Pattern_rb.html">
67
67
 
68
- lib/TextParser/TokenDoc.rb
68
+ lib/TextParser/Pattern.rb
69
69
 
70
70
  </a>
71
71
 
@@ -83,9 +83,9 @@
83
83
  <br />
84
84
 
85
85
 
86
- <a href="../../files/lib/TextParser/Pattern_rb.html">
86
+ <a href="../../files/lib/TextParser/TokenDoc_rb.html">
87
87
 
88
- lib/TextParser/Pattern.rb
88
+ lib/TextParser/TokenDoc.rb
89
89
 
90
90
  </a>
91
91
 
@@ -93,9 +93,9 @@
93
93
  <br />
94
94
 
95
95
 
96
- <a href="../../files/lib/TextParser_rb.html">
96
+ <a href="../../files/lib/TextParser/StackElement_rb.html">
97
97
 
98
- lib/TextParser.rb
98
+ lib/TextParser/StackElement.rb
99
99
 
100
100
  </a>
101
101
 
@@ -129,36 +129,17 @@
129
129
 
130
130
  <div id="description">
131
131
  <p>
132
- The <a href="TextParser.html">TextParser</a> implements a regular LALR
133
- parser. But it uses a recursive rule traversor instead of the more commonly
134
- found state machine generated by yacc-like tools. Since stack depths is not
135
- really an issue with a Ruby implementation this approach has one big
136
- advantage. The syntax of the parser can be modified during parsing. This
137
- allows support for languages that can extend themself. The <a
138
- href="../TaskJuggler.html">TaskJuggler</a> syntax is such an beast.
139
- Traditional yacc generated parsers would fail with such a syntax.
140
- </p>
141
- <p>
142
- This class is just a base class. A complete parser would derive from this
143
- class and implement the rule set and the functions _nextToken()_ and
144
- _returnToken()_. It also needs to set the array <em>variables</em> to
145
- declare all variables ($SOMENAME) that the scanner may deliver.
132
+ encoding: UTF-8
146
133
  </p>
134
+ <h1>StackElement.rb &#8212; The <a href="../TaskJuggler.html">TaskJuggler</a> III <a href="Project.html">Project</a> Management Software</h1>
147
135
  <p>
148
- To describe the syntax the functions <a
149
- href="TextParser.html#M000241">TextParser#pattern</a>, <a
150
- href="TextParser.html#M000242">TextParser#optional</a> and <a
151
- href="TextParser.html#M000243">TextParser#repeatable</a> can be used. When
152
- the rule set is changed during parsing, <a
153
- href="TextParser.html#M000244">TextParser#updateParserTables</a> must be
154
- called to make the changes effective. The parser can also document the
155
- syntax automatically. To document a pattern, the functions TextParser#doc,
156
- TextParser#descr, TextParser#also and TextParser#arg can be used.
136
+ Copyright &#169; 2006, 2007, 2008, 2009, 2010 by Chris Schlaeger
137
+ <cs@kde.org>
157
138
  </p>
158
139
  <p>
159
- To start parsing the input the function <a
160
- href="TextParser.html#M000245">TextParser#parse</a> needs to be called with
161
- the name of the start rule.
140
+ This program is free software; you can redistribute it and/or modify it
141
+ under the terms of version 2 of the GNU General Public License as published
142
+ by the Free Software Foundation.
162
143
  </p>
163
144
 
164
145
  </div>
@@ -171,29 +152,31 @@ the name of the start rule.
171
152
 
172
153
  <div class="name-list">
173
154
 
174
- <a href="#M000248">error</a>&nbsp;&nbsp;
155
+ <a href="#M000543">error</a>&nbsp;&nbsp;
175
156
 
176
- <a href="#M000239">initRules</a>&nbsp;&nbsp;
157
+ <a href="#M000534">initRules</a>&nbsp;&nbsp;
177
158
 
178
- <a href="#M000247">matchingRules</a>&nbsp;&nbsp;
159
+ <a href="#M000533">limitTokenSet</a>&nbsp;&nbsp;
179
160
 
180
- <a href="#M000238">new</a>&nbsp;&nbsp;
161
+ <a href="#M000542">matchingRules</a>&nbsp;&nbsp;
181
162
 
182
- <a href="#M000240">newRule</a>&nbsp;&nbsp;
163
+ <a href="#M000532">new</a>&nbsp;&nbsp;
183
164
 
184
- <a href="#M000242">optional</a>&nbsp;&nbsp;
165
+ <a href="#M000535">newRule</a>&nbsp;&nbsp;
185
166
 
186
- <a href="#M000245">parse</a>&nbsp;&nbsp;
167
+ <a href="#M000537">optional</a>&nbsp;&nbsp;
187
168
 
188
- <a href="#M000241">pattern</a>&nbsp;&nbsp;
169
+ <a href="#M000540">parse</a>&nbsp;&nbsp;
189
170
 
190
- <a href="#M000243">repeatable</a>&nbsp;&nbsp;
171
+ <a href="#M000536">pattern</a>&nbsp;&nbsp;
191
172
 
192
- <a href="#M000246">sourceFileInfo</a>&nbsp;&nbsp;
173
+ <a href="#M000538">repeatable</a>&nbsp;&nbsp;
193
174
 
194
- <a href="#M000244">updateParserTables</a>&nbsp;&nbsp;
175
+ <a href="#M000541">sourceFileInfo</a>&nbsp;&nbsp;
195
176
 
196
- <a href="#M000249">warning</a>&nbsp;&nbsp;
177
+ <a href="#M000539">updateParserTables</a>&nbsp;&nbsp;
178
+
179
+ <a href="#M000544">warning</a>&nbsp;&nbsp;
197
180
 
198
181
  </div>
199
182
  </div>
@@ -243,12 +226,12 @@ Class <a href="TextParser/TokenDoc.html" class="link">TaskJuggler::TextParser::T
243
226
  <h3 class="section-bar">Public Class methods</h3>
244
227
 
245
228
 
246
- <div id="method-M000238" class="method-detail">
247
- <a name="M000238"></a>
229
+ <div id="method-M000532" class="method-detail">
230
+ <a name="M000532"></a>
248
231
 
249
232
  <div class="method-heading">
250
233
 
251
- <a href="#M000238" class="method-signature">
234
+ <a href="#M000532" class="method-signature">
252
235
 
253
236
  <span class="method-name">new</span><span class="method-args">()</span>
254
237
 
@@ -263,18 +246,18 @@ Create a new <a href="TextParser.html">TextParser</a> object.
263
246
  </p>
264
247
 
265
248
  <p><a class="source-toggle" href="#"
266
- onclick="toggleCode('M000238-source');return false;">[Source]</a></p>
267
- <div class="method-source-code" id="M000238-source">
249
+ onclick="toggleCode('M000532-source');return false;">[Source]</a></p>
250
+ <div class="method-source-code" id="M000532-source">
268
251
  <pre>
269
252
  <span class="ruby-comment cmt"># File lib/TextParser.rb, line 70</span>
270
253
  70: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
271
254
  71: <span class="ruby-ivar">@rules</span> = { }
272
255
  72: <span class="ruby-comment cmt"># Array to hold the token types that the scanner can return.</span>
273
256
  73: <span class="ruby-ivar">@variables</span> = []
274
- 74: <span class="ruby-comment cmt"># The currently processed rule.</span>
275
- 75: <span class="ruby-ivar">@cr</span> = <span class="ruby-keyword kw">nil</span>
276
- 76: <span class="ruby-comment cmt"># If set to a value larger than 0 debug output will be generated.</span>
277
- 77: <span class="ruby-ivar">@@debug</span> = <span class="ruby-value">30</span>
257
+ 74: <span class="ruby-comment cmt"># An list of token types that are not allowed in the current context.</span>
258
+ 75: <span class="ruby-ivar">@badVariables</span> = []
259
+ 76: <span class="ruby-comment cmt"># The currently processed rule.</span>
260
+ 77: <span class="ruby-ivar">@cr</span> = <span class="ruby-keyword kw">nil</span>
278
261
  78: <span class="ruby-keyword kw">end</span>
279
262
  </pre>
280
263
  </div>
@@ -286,12 +269,12 @@ Create a new <a href="TextParser.html">TextParser</a> object.
286
269
  <h3 class="section-bar">Public Instance methods</h3>
287
270
 
288
271
 
289
- <div id="method-M000248" class="method-detail">
290
- <a name="M000248"></a>
272
+ <div id="method-M000543" class="method-detail">
273
+ <a name="M000543"></a>
291
274
 
292
275
  <div class="method-heading">
293
276
 
294
- <a href="#M000248" class="method-signature">
277
+ <a href="#M000543" class="method-signature">
295
278
 
296
279
  <span class="method-name">error</span><span class="method-args">(id, text, property = nil)</span>
297
280
 
@@ -302,13 +285,13 @@ Create a new <a href="TextParser.html">TextParser</a> object.
302
285
  <div class="method-description">
303
286
 
304
287
  <p><a class="source-toggle" href="#"
305
- onclick="toggleCode('M000248-source');return false;">[Source]</a></p>
306
- <div class="method-source-code" id="M000248-source">
288
+ onclick="toggleCode('M000543-source');return false;">[Source]</a></p>
289
+ <div class="method-source-code" id="M000543-source">
307
290
  <pre>
308
- <span class="ruby-comment cmt"># File lib/TextParser.rb, line 181</span>
309
- 181: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">error</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span> = <span class="ruby-keyword kw">nil</span>)
310
- 182: <span class="ruby-ivar">@scanner</span>.<span class="ruby-identifier">error</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span>)
311
- 183: <span class="ruby-keyword kw">end</span>
291
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 190</span>
292
+ 190: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">error</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span> = <span class="ruby-keyword kw">nil</span>)
293
+ 191: <span class="ruby-ivar">@scanner</span>.<span class="ruby-identifier">error</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span>)
294
+ 192: <span class="ruby-keyword kw">end</span>
312
295
  </pre>
313
296
  </div>
314
297
 
@@ -316,12 +299,12 @@ Create a new <a href="TextParser.html">TextParser</a> object.
316
299
  </div>
317
300
 
318
301
 
319
- <div id="method-M000239" class="method-detail">
320
- <a name="M000239"></a>
302
+ <div id="method-M000534" class="method-detail">
303
+ <a name="M000534"></a>
321
304
 
322
305
  <div class="method-heading">
323
306
 
324
- <a href="#M000239" class="method-signature">
307
+ <a href="#M000534" class="method-signature">
325
308
 
326
309
  <span class="method-name">initRules</span><span class="method-args">()</span>
327
310
 
@@ -337,20 +320,58 @@ rules.
337
320
  </p>
338
321
 
339
322
  <p><a class="source-toggle" href="#"
340
- onclick="toggleCode('M000239-source');return false;">[Source]</a></p>
341
- <div class="method-source-code" id="M000239-source">
323
+ onclick="toggleCode('M000534-source');return false;">[Source]</a></p>
324
+ <div class="method-source-code" id="M000534-source">
325
+ <pre>
326
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 90</span>
327
+ 90: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initRules</span>
328
+ 91: <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span>
329
+ 92: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">m</span>[<span class="ruby-value">0</span>, <span class="ruby-value">5</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">'rule_'</span>
330
+ 93: <span class="ruby-comment cmt"># Create a new rule with the suffix of the function name as name.</span>
331
+ 94: <span class="ruby-identifier">newRule</span>(<span class="ruby-identifier">m</span>[<span class="ruby-value">5</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>])
332
+ 95: <span class="ruby-comment cmt"># Call the function.</span>
333
+ 96: <span class="ruby-identifier">send</span>(<span class="ruby-identifier">m</span>)
334
+ 97: <span class="ruby-keyword kw">end</span>
335
+ 98: <span class="ruby-keyword kw">end</span>
336
+ 99: <span class="ruby-keyword kw">end</span>
337
+ </pre>
338
+ </div>
339
+
340
+ </div>
341
+ </div>
342
+
343
+
344
+ <div id="method-M000533" class="method-detail">
345
+ <a name="M000533"></a>
346
+
347
+ <div class="method-heading">
348
+
349
+ <a href="#M000533" class="method-signature">
350
+
351
+ <span class="method-name">limitTokenSet</span><span class="method-args">(tokenSet)</span>
352
+
353
+ </a>
354
+
355
+ </div>
356
+
357
+ <div class="method-description">
358
+
359
+ <p>
360
+ Limit the allowed tokens of the scanner to the subset passed by the
361
+ <em>tokenSet</em> Array.
362
+ </p>
363
+
364
+ <p><a class="source-toggle" href="#"
365
+ onclick="toggleCode('M000533-source');return false;">[Source]</a></p>
366
+ <div class="method-source-code" id="M000533-source">
342
367
  <pre>
343
- <span class="ruby-comment cmt"># File lib/TextParser.rb, line 81</span>
344
- 81: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initRules</span>
345
- 82: <span class="ruby-identifier">methods</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">m</span><span class="ruby-operator">|</span>
346
- 83: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">m</span>[<span class="ruby-value">0</span>, <span class="ruby-value">5</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">'rule_'</span>
347
- 84: <span class="ruby-comment cmt"># Create a new rule with the suffix of the function name as name.</span>
348
- 85: <span class="ruby-identifier">newRule</span>(<span class="ruby-identifier">m</span>[<span class="ruby-value">5</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>])
349
- 86: <span class="ruby-comment cmt"># Call the function.</span>
350
- 87: <span class="ruby-identifier">send</span>(<span class="ruby-identifier">m</span>)
351
- 88: <span class="ruby-keyword kw">end</span>
352
- 89: <span class="ruby-keyword kw">end</span>
353
- 90: <span class="ruby-keyword kw">end</span>
368
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 82</span>
369
+ 82: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">limitTokenSet</span>(<span class="ruby-identifier">tokenSet</span>)
370
+ 83: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">tokenSet</span>
371
+ 84:
372
+ 85: <span class="ruby-ivar">@badVariables</span> = <span class="ruby-ivar">@variables</span>.<span class="ruby-identifier">dup</span>
373
+ 86: <span class="ruby-ivar">@badVariables</span>.<span class="ruby-identifier">delete_if</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">tokenSet</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">v</span>) }
374
+ 87: <span class="ruby-keyword kw">end</span>
354
375
  </pre>
355
376
  </div>
356
377
 
@@ -358,12 +379,12 @@ rules.
358
379
  </div>
359
380
 
360
381
 
361
- <div id="method-M000247" class="method-detail">
362
- <a name="M000247"></a>
382
+ <div id="method-M000542" class="method-detail">
383
+ <a name="M000542"></a>
363
384
 
364
385
  <div class="method-heading">
365
386
 
366
- <a href="#M000247" class="method-signature">
387
+ <a href="#M000542" class="method-signature">
367
388
 
368
389
  <span class="method-name">matchingRules</span><span class="method-args">(keyword)</span>
369
390
 
@@ -374,18 +395,18 @@ rules.
374
395
  <div class="method-description">
375
396
 
376
397
  <p><a class="source-toggle" href="#"
377
- onclick="toggleCode('M000247-source');return false;">[Source]</a></p>
378
- <div class="method-source-code" id="M000247-source">
398
+ onclick="toggleCode('M000542-source');return false;">[Source]</a></p>
399
+ <div class="method-source-code" id="M000542-source">
379
400
  <pre>
380
- <span class="ruby-comment cmt"># File lib/TextParser.rb, line 172</span>
381
- 172: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">matchingRules</span>(<span class="ruby-identifier">keyword</span>)
382
- 173: <span class="ruby-identifier">matches</span> = []
383
- 174: <span class="ruby-ivar">@rules</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span>, <span class="ruby-identifier">rule</span><span class="ruby-operator">|</span>
384
- 175: <span class="ruby-identifier">patIdx</span> = <span class="ruby-identifier">rule</span>.<span class="ruby-identifier">matchingPatternIndex</span>(<span class="ruby-value str">'_'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">keyword</span>)
385
- 176: <span class="ruby-identifier">matches</span> <span class="ruby-operator">&lt;&lt;</span> [ <span class="ruby-identifier">rule</span>, <span class="ruby-identifier">patIdx</span> ] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">patIdx</span>
386
- 177: <span class="ruby-keyword kw">end</span>
387
- 178: <span class="ruby-identifier">matches</span>
388
- 179: <span class="ruby-keyword kw">end</span>
401
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 181</span>
402
+ 181: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">matchingRules</span>(<span class="ruby-identifier">keyword</span>)
403
+ 182: <span class="ruby-identifier">matches</span> = []
404
+ 183: <span class="ruby-ivar">@rules</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span>, <span class="ruby-identifier">rule</span><span class="ruby-operator">|</span>
405
+ 184: <span class="ruby-identifier">patIdx</span> = <span class="ruby-identifier">rule</span>.<span class="ruby-identifier">matchingPatternIndex</span>(<span class="ruby-value str">'_'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">keyword</span>)
406
+ 185: <span class="ruby-identifier">matches</span> <span class="ruby-operator">&lt;&lt;</span> [ <span class="ruby-identifier">rule</span>, <span class="ruby-identifier">patIdx</span> ] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">patIdx</span>
407
+ 186: <span class="ruby-keyword kw">end</span>
408
+ 187: <span class="ruby-identifier">matches</span>
409
+ 188: <span class="ruby-keyword kw">end</span>
389
410
  </pre>
390
411
  </div>
391
412
 
@@ -393,12 +414,12 @@ rules.
393
414
  </div>
394
415
 
395
416
 
396
- <div id="method-M000240" class="method-detail">
397
- <a name="M000240"></a>
417
+ <div id="method-M000535" class="method-detail">
418
+ <a name="M000535"></a>
398
419
 
399
420
  <div class="method-heading">
400
421
 
401
- <a href="#M000240" class="method-signature">
422
+ <a href="#M000535" class="method-signature">
402
423
 
403
424
  <span class="method-name">newRule</span><span class="method-args">(name) {|| ...}</span>
404
425
 
@@ -411,29 +432,29 @@ rules.
411
432
  <p>
412
433
  Add a new rule to the rule set. <em>name</em> must be a unique identifier.
413
434
  The function also sets the class variable @cr to the new rule. Subsequent
414
- calls to <a href="TextParser.html#M000241">TextParser#pattern</a>, <a
415
- href="TextParser.html#M000242">TextParser#optional</a> or <a
416
- href="TextParser.html#M000243">TextParser#repeatable</a> will then
435
+ calls to <a href="TextParser.html#M000536">TextParser#pattern</a>, <a
436
+ href="TextParser.html#M000537">TextParser#optional</a> or <a
437
+ href="TextParser.html#M000538">TextParser#repeatable</a> will then
417
438
  implicitely operate on the most recently added rule.
418
439
  </p>
419
440
 
420
441
  <p><a class="source-toggle" href="#"
421
- onclick="toggleCode('M000240-source');return false;">[Source]</a></p>
422
- <div class="method-source-code" id="M000240-source">
442
+ onclick="toggleCode('M000535-source');return false;">[Source]</a></p>
443
+ <div class="method-source-code" id="M000535-source">
423
444
  <pre>
424
- <span class="ruby-comment cmt"># File lib/TextParser.rb, line 97</span>
425
- 97: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">newRule</span>(<span class="ruby-identifier">name</span>)
426
- 98: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Fatal Error: Rule #{name} already exists&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@rules</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">name</span>)
427
- 99:
428
- 100: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">block_given?</span>
429
- 101: <span class="ruby-identifier">saveCr</span> = <span class="ruby-ivar">@cr</span>
430
- 102: <span class="ruby-ivar">@rules</span>[<span class="ruby-identifier">name</span>] = <span class="ruby-ivar">@cr</span> = <span class="ruby-constant">TextParser</span><span class="ruby-operator">::</span><span class="ruby-constant">Rule</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">name</span>)
431
- 103: <span class="ruby-keyword kw">yield</span>
432
- 104: <span class="ruby-ivar">@cr</span> = <span class="ruby-identifier">saveCr</span>
433
- 105: <span class="ruby-keyword kw">else</span>
434
- 106: <span class="ruby-ivar">@rules</span>[<span class="ruby-identifier">name</span>] = <span class="ruby-ivar">@cr</span> = <span class="ruby-constant">TextParser</span><span class="ruby-operator">::</span><span class="ruby-constant">Rule</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">name</span>)
435
- 107: <span class="ruby-keyword kw">end</span>
436
- 108: <span class="ruby-keyword kw">end</span>
445
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 106</span>
446
+ 106: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">newRule</span>(<span class="ruby-identifier">name</span>)
447
+ 107: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Fatal Error: Rule #{name} already exists&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@rules</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">name</span>)
448
+ 108:
449
+ 109: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">block_given?</span>
450
+ 110: <span class="ruby-identifier">saveCr</span> = <span class="ruby-ivar">@cr</span>
451
+ 111: <span class="ruby-ivar">@rules</span>[<span class="ruby-identifier">name</span>] = <span class="ruby-ivar">@cr</span> = <span class="ruby-constant">TextParser</span><span class="ruby-operator">::</span><span class="ruby-constant">Rule</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">name</span>)
452
+ 112: <span class="ruby-keyword kw">yield</span>
453
+ 113: <span class="ruby-ivar">@cr</span> = <span class="ruby-identifier">saveCr</span>
454
+ 114: <span class="ruby-keyword kw">else</span>
455
+ 115: <span class="ruby-ivar">@rules</span>[<span class="ruby-identifier">name</span>] = <span class="ruby-ivar">@cr</span> = <span class="ruby-constant">TextParser</span><span class="ruby-operator">::</span><span class="ruby-constant">Rule</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">name</span>)
456
+ 116: <span class="ruby-keyword kw">end</span>
457
+ 117: <span class="ruby-keyword kw">end</span>
437
458
  </pre>
438
459
  </div>
439
460
 
@@ -441,12 +462,12 @@ implicitely operate on the most recently added rule.
441
462
  </div>
442
463
 
443
464
 
444
- <div id="method-M000242" class="method-detail">
445
- <a name="M000242"></a>
465
+ <div id="method-M000537" class="method-detail">
466
+ <a name="M000537"></a>
446
467
 
447
468
  <div class="method-heading">
448
469
 
449
- <a href="#M000242" class="method-signature">
470
+ <a href="#M000537" class="method-signature">
450
471
 
451
472
  <span class="method-name">optional</span><span class="method-args">()</span>
452
473
 
@@ -462,13 +483,13 @@ elements.
462
483
  </p>
463
484
 
464
485
  <p><a class="source-toggle" href="#"
465
- onclick="toggleCode('M000242-source');return false;">[Source]</a></p>
466
- <div class="method-source-code" id="M000242-source">
486
+ onclick="toggleCode('M000537-source');return false;">[Source]</a></p>
487
+ <div class="method-source-code" id="M000537-source">
467
488
  <pre>
468
- <span class="ruby-comment cmt"># File lib/TextParser.rb, line 127</span>
469
- 127: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">optional</span>
470
- 128: <span class="ruby-ivar">@cr</span>.<span class="ruby-identifier">setOptional</span>
471
- 129: <span class="ruby-keyword kw">end</span>
489
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 136</span>
490
+ 136: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">optional</span>
491
+ 137: <span class="ruby-ivar">@cr</span>.<span class="ruby-identifier">setOptional</span>
492
+ 138: <span class="ruby-keyword kw">end</span>
472
493
  </pre>
473
494
  </div>
474
495
 
@@ -476,12 +497,12 @@ elements.
476
497
  </div>
477
498
 
478
499
 
479
- <div id="method-M000245" class="method-detail">
480
- <a name="M000245"></a>
500
+ <div id="method-M000540" class="method-detail">
501
+ <a name="M000540"></a>
481
502
 
482
503
  <div class="method-heading">
483
504
 
484
- <a href="#M000245" class="method-signature">
505
+ <a href="#M000540" class="method-signature">
485
506
 
486
507
  <span class="method-name">parse</span><span class="method-args">(ruleName)</span>
487
508
 
@@ -498,23 +519,23 @@ top-level parser rule that was specified by <em>ruleName</em>.
498
519
  </p>
499
520
 
500
521
  <p><a class="source-toggle" href="#"
501
- onclick="toggleCode('M000245-source');return false;">[Source]</a></p>
502
- <div class="method-source-code" id="M000245-source">
522
+ onclick="toggleCode('M000540-source');return false;">[Source]</a></p>
523
+ <div class="method-source-code" id="M000540-source">
503
524
  <pre>
504
- <span class="ruby-comment cmt"># File lib/TextParser.rb, line 150</span>
505
- 150: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parse</span>(<span class="ruby-identifier">ruleName</span>)
506
- 151: <span class="ruby-ivar">@stack</span> = []
507
- 152: <span class="ruby-ivar">@@expectedTokens</span> = []
508
- 153: <span class="ruby-identifier">updateParserTables</span>
509
- 154: <span class="ruby-keyword kw">begin</span>
510
- 155: <span class="ruby-identifier">result</span> = <span class="ruby-identifier">parseRule</span>(<span class="ruby-ivar">@rules</span>[<span class="ruby-identifier">ruleName</span>])
511
- 156: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">TjException</span>
512
- 157: <span class="ruby-comment cmt"># error('parse_error', $!.message)</span>
513
- 158: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span>
514
- 159: <span class="ruby-keyword kw">end</span>
515
- 160:
516
- 161: <span class="ruby-identifier">result</span>
517
- 162: <span class="ruby-keyword kw">end</span>
525
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 159</span>
526
+ 159: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parse</span>(<span class="ruby-identifier">ruleName</span>)
527
+ 160: <span class="ruby-ivar">@stack</span> = []
528
+ 161: <span class="ruby-ivar">@@expectedTokens</span> = []
529
+ 162: <span class="ruby-identifier">updateParserTables</span>
530
+ 163: <span class="ruby-keyword kw">begin</span>
531
+ 164: <span class="ruby-identifier">result</span> = <span class="ruby-identifier">parseRule</span>(<span class="ruby-ivar">@rules</span>[<span class="ruby-identifier">ruleName</span>])
532
+ 165: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">TjException</span>
533
+ 166: <span class="ruby-comment cmt"># error('parse_error', $!.message)</span>
534
+ 167: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span>
535
+ 168: <span class="ruby-keyword kw">end</span>
536
+ 169:
537
+ 170: <span class="ruby-identifier">result</span>
538
+ 171: <span class="ruby-keyword kw">end</span>
518
539
  </pre>
519
540
  </div>
520
541
 
@@ -522,12 +543,12 @@ top-level parser rule that was specified by <em>ruleName</em>.
522
543
  </div>
523
544
 
524
545
 
525
- <div id="method-M000241" class="method-detail">
526
- <a name="M000241"></a>
546
+ <div id="method-M000536" class="method-detail">
547
+ <a name="M000536"></a>
527
548
 
528
549
  <div class="method-heading">
529
550
 
530
- <a href="#M000241" class="method-signature">
551
+ <a href="#M000536" class="method-signature">
531
552
 
532
553
  <span class="method-name">pattern</span><span class="method-args">(tokens, func = nil)</span>
533
554
 
@@ -560,13 +581,13 @@ completed the processing of this rule.
560
581
  </p>
561
582
 
562
583
  <p><a class="source-toggle" href="#"
563
- onclick="toggleCode('M000241-source');return false;">[Source]</a></p>
564
- <div class="method-source-code" id="M000241-source">
584
+ onclick="toggleCode('M000536-source');return false;">[Source]</a></p>
585
+ <div class="method-source-code" id="M000536-source">
565
586
  <pre>
566
- <span class="ruby-comment cmt"># File lib/TextParser.rb, line 121</span>
567
- 121: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">pattern</span>(<span class="ruby-identifier">tokens</span>, <span class="ruby-identifier">func</span> = <span class="ruby-keyword kw">nil</span>)
568
- 122: <span class="ruby-ivar">@cr</span>.<span class="ruby-identifier">addPattern</span>(<span class="ruby-constant">TextParser</span><span class="ruby-operator">::</span><span class="ruby-constant">Pattern</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">tokens</span>, <span class="ruby-identifier">func</span>))
569
- 123: <span class="ruby-keyword kw">end</span>
587
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 130</span>
588
+ 130: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">pattern</span>(<span class="ruby-identifier">tokens</span>, <span class="ruby-identifier">func</span> = <span class="ruby-keyword kw">nil</span>)
589
+ 131: <span class="ruby-ivar">@cr</span>.<span class="ruby-identifier">addPattern</span>(<span class="ruby-constant">TextParser</span><span class="ruby-operator">::</span><span class="ruby-constant">Pattern</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">tokens</span>, <span class="ruby-identifier">func</span>))
590
+ 132: <span class="ruby-keyword kw">end</span>
570
591
  </pre>
571
592
  </div>
572
593
 
@@ -574,12 +595,12 @@ completed the processing of this rule.
574
595
  </div>
575
596
 
576
597
 
577
- <div id="method-M000243" class="method-detail">
578
- <a name="M000243"></a>
598
+ <div id="method-M000538" class="method-detail">
599
+ <a name="M000538"></a>
579
600
 
580
601
  <div class="method-heading">
581
602
 
582
- <a href="#M000243" class="method-signature">
603
+ <a href="#M000538" class="method-signature">
583
604
 
584
605
  <span class="method-name">repeatable</span><span class="method-args">()</span>
585
606
 
@@ -595,13 +616,13 @@ elements.
595
616
  </p>
596
617
 
597
618
  <p><a class="source-toggle" href="#"
598
- onclick="toggleCode('M000243-source');return false;">[Source]</a></p>
599
- <div class="method-source-code" id="M000243-source">
619
+ onclick="toggleCode('M000538-source');return false;">[Source]</a></p>
620
+ <div class="method-source-code" id="M000538-source">
600
621
  <pre>
601
- <span class="ruby-comment cmt"># File lib/TextParser.rb, line 133</span>
602
- 133: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">repeatable</span>
603
- 134: <span class="ruby-ivar">@cr</span>.<span class="ruby-identifier">setRepeatable</span>
604
- 135: <span class="ruby-keyword kw">end</span>
622
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 142</span>
623
+ 142: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">repeatable</span>
624
+ 143: <span class="ruby-ivar">@cr</span>.<span class="ruby-identifier">setRepeatable</span>
625
+ 144: <span class="ruby-keyword kw">end</span>
605
626
  </pre>
606
627
  </div>
607
628
 
@@ -609,12 +630,12 @@ elements.
609
630
  </div>
610
631
 
611
632
 
612
- <div id="method-M000246" class="method-detail">
613
- <a name="M000246"></a>
633
+ <div id="method-M000541" class="method-detail">
634
+ <a name="M000541"></a>
614
635
 
615
636
  <div class="method-heading">
616
637
 
617
- <a href="#M000246" class="method-signature">
638
+ <a href="#M000541" class="method-signature">
618
639
 
619
640
  <span class="method-name">sourceFileInfo</span><span class="method-args">()</span>
620
641
 
@@ -632,14 +653,14 @@ nil if we don&#8217;t have a current position.
632
653
  </p>
633
654
 
634
655
  <p><a class="source-toggle" href="#"
635
- onclick="toggleCode('M000246-source');return false;">[Source]</a></p>
636
- <div class="method-source-code" id="M000246-source">
656
+ onclick="toggleCode('M000541-source');return false;">[Source]</a></p>
657
+ <div class="method-source-code" id="M000541-source">
637
658
  <pre>
638
- <span class="ruby-comment cmt"># File lib/TextParser.rb, line 167</span>
639
- 167: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sourceFileInfo</span>
640
- 168: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@stack</span>.<span class="ruby-identifier">empty?</span>
641
- 169: <span class="ruby-ivar">@stack</span>.<span class="ruby-identifier">last</span>.<span class="ruby-identifier">sourceFileInfo</span>
642
- 170: <span class="ruby-keyword kw">end</span>
659
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 176</span>
660
+ 176: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sourceFileInfo</span>
661
+ 177: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@stack</span>.<span class="ruby-identifier">empty?</span>
662
+ 178: <span class="ruby-ivar">@stack</span>.<span class="ruby-identifier">last</span>.<span class="ruby-identifier">sourceFileInfo</span>
663
+ 179: <span class="ruby-keyword kw">end</span>
643
664
  </pre>
644
665
  </div>
645
666
 
@@ -647,12 +668,12 @@ nil if we don&#8217;t have a current position.
647
668
  </div>
648
669
 
649
670
 
650
- <div id="method-M000244" class="method-detail">
651
- <a name="M000244"></a>
671
+ <div id="method-M000539" class="method-detail">
672
+ <a name="M000539"></a>
652
673
 
653
674
  <div class="method-heading">
654
675
 
655
- <a href="#M000244" class="method-signature">
676
+ <a href="#M000539" class="method-signature">
656
677
 
657
678
  <span class="method-name">updateParserTables</span><span class="method-args">()</span>
658
679
 
@@ -665,21 +686,21 @@ nil if we don&#8217;t have a current position.
665
686
  <p>
666
687
  This function needs to be called whenever new rules or patterns have been
667
688
  added and before the next call to <a
668
- href="TextParser.html#M000245">TextParser#parse</a>.
689
+ href="TextParser.html#M000540">TextParser#parse</a>.
669
690
  </p>
670
691
 
671
692
  <p><a class="source-toggle" href="#"
672
- onclick="toggleCode('M000244-source');return false;">[Source]</a></p>
673
- <div class="method-source-code" id="M000244-source">
693
+ onclick="toggleCode('M000539-source');return false;">[Source]</a></p>
694
+ <div class="method-source-code" id="M000539-source">
674
695
  <pre>
675
- <span class="ruby-comment cmt"># File lib/TextParser.rb, line 139</span>
676
- 139: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">updateParserTables</span>
677
- 140: <span class="ruby-ivar">@rules</span>.<span class="ruby-identifier">each_value</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">rule</span><span class="ruby-operator">|</span> <span class="ruby-identifier">rule</span>.<span class="ruby-identifier">transitions</span> = {} }
678
- 141: <span class="ruby-ivar">@rules</span>.<span class="ruby-identifier">each_value</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">rule</span><span class="ruby-operator">|</span>
679
- 142: <span class="ruby-identifier">getTransitions</span>(<span class="ruby-identifier">rule</span>)
680
- 143: <span class="ruby-identifier">checkRule</span>(<span class="ruby-identifier">rule</span>)
681
- 144: <span class="ruby-keyword kw">end</span>
682
- 145: <span class="ruby-keyword kw">end</span>
696
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 148</span>
697
+ 148: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">updateParserTables</span>
698
+ 149: <span class="ruby-ivar">@rules</span>.<span class="ruby-identifier">each_value</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">rule</span><span class="ruby-operator">|</span> <span class="ruby-identifier">rule</span>.<span class="ruby-identifier">transitions</span> = {} }
699
+ 150: <span class="ruby-ivar">@rules</span>.<span class="ruby-identifier">each_value</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">rule</span><span class="ruby-operator">|</span>
700
+ 151: <span class="ruby-identifier">getTransitions</span>(<span class="ruby-identifier">rule</span>)
701
+ 152: <span class="ruby-identifier">checkRule</span>(<span class="ruby-identifier">rule</span>)
702
+ 153: <span class="ruby-keyword kw">end</span>
703
+ 154: <span class="ruby-keyword kw">end</span>
683
704
  </pre>
684
705
  </div>
685
706
 
@@ -687,12 +708,12 @@ href="TextParser.html#M000245">TextParser#parse</a>.
687
708
  </div>
688
709
 
689
710
 
690
- <div id="method-M000249" class="method-detail">
691
- <a name="M000249"></a>
711
+ <div id="method-M000544" class="method-detail">
712
+ <a name="M000544"></a>
692
713
 
693
714
  <div class="method-heading">
694
715
 
695
- <a href="#M000249" class="method-signature">
716
+ <a href="#M000544" class="method-signature">
696
717
 
697
718
  <span class="method-name">warning</span><span class="method-args">(id, text, property = nil)</span>
698
719
 
@@ -703,13 +724,13 @@ href="TextParser.html#M000245">TextParser#parse</a>.
703
724
  <div class="method-description">
704
725
 
705
726
  <p><a class="source-toggle" href="#"
706
- onclick="toggleCode('M000249-source');return false;">[Source]</a></p>
707
- <div class="method-source-code" id="M000249-source">
727
+ onclick="toggleCode('M000544-source');return false;">[Source]</a></p>
728
+ <div class="method-source-code" id="M000544-source">
708
729
  <pre>
709
- <span class="ruby-comment cmt"># File lib/TextParser.rb, line 185</span>
710
- 185: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">warning</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span> = <span class="ruby-keyword kw">nil</span>)
711
- 186: <span class="ruby-ivar">@scanner</span>.<span class="ruby-identifier">warning</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span>)
712
- 187: <span class="ruby-keyword kw">end</span>
730
+ <span class="ruby-comment cmt"># File lib/TextParser.rb, line 194</span>
731
+ 194: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">warning</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span> = <span class="ruby-keyword kw">nil</span>)
732
+ 195: <span class="ruby-ivar">@scanner</span>.<span class="ruby-identifier">warning</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span>)
733
+ 196: <span class="ruby-keyword kw">end</span>
713
734
  </pre>
714
735
  </div>
715
736