taskjuggler 0.0.5 → 0.0.6

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 (544) hide show
  1. data/CHANGELOG +2086 -0
  2. data/benchmarks/666tasks.tjp +3183 -0
  3. data/benchmarks/booking.tjp +14 -10
  4. data/doc/AppConfig.html +95 -73
  5. data/doc/Arguments.html +22 -2
  6. data/doc/CHANGELOG.html +2587 -0
  7. data/doc/COPYING.html +21 -1
  8. data/doc/Object.html +161 -122
  9. data/doc/README.html +21 -1
  10. data/doc/RuntimeConfig.html +26 -6
  11. data/doc/String.html +38 -18
  12. data/doc/StringIO.html +579 -0
  13. data/doc/TaskJuggler.html +251 -143
  14. data/doc/TaskJuggler/Account.html +26 -6
  15. data/doc/TaskJuggler/AccountAttribute.html +28 -8
  16. data/doc/TaskJuggler/AccountScenario.html +24 -4
  17. data/doc/TaskJuggler/Allocation.html +30 -10
  18. data/doc/TaskJuggler/AllocationAttribute.html +28 -8
  19. data/doc/TaskJuggler/AttributeBase.html +46 -26
  20. data/doc/TaskJuggler/AttributeDefinition.html +22 -2
  21. data/doc/TaskJuggler/BatchProcessor.html +40 -20
  22. data/doc/TaskJuggler/Booking.html +26 -6
  23. data/doc/TaskJuggler/BookingListAttribute.html +28 -8
  24. data/doc/TaskJuggler/BooleanAttribute.html +28 -8
  25. data/doc/TaskJuggler/CSVFile.html +308 -146
  26. data/doc/TaskJuggler/CellSettingPattern.html +22 -2
  27. data/doc/TaskJuggler/CellSettingPatternList.html +26 -6
  28. data/doc/TaskJuggler/Charge.html +26 -6
  29. data/doc/TaskJuggler/ChargeListAttribute.html +26 -6
  30. data/doc/TaskJuggler/ChargeSet.html +33 -13
  31. data/doc/TaskJuggler/ChargeSetListAttribute.html +28 -8
  32. data/doc/TaskJuggler/ColumnListAttribute.html +26 -6
  33. data/doc/TaskJuggler/ColumnTable.html +24 -4
  34. data/doc/TaskJuggler/Daemon.html +26 -6
  35. data/doc/TaskJuggler/DateAttribute.html +26 -6
  36. data/doc/TaskJuggler/DefinitionListAttribute.html +22 -2
  37. data/doc/TaskJuggler/DependencyListAttribute.html +28 -8
  38. data/doc/TaskJuggler/DurationAttribute.html +28 -8
  39. data/doc/TaskJuggler/FixnumAttribute.html +24 -4
  40. data/doc/TaskJuggler/FlagListAttribute.html +28 -8
  41. data/doc/TaskJuggler/FloatAttribute.html +26 -6
  42. data/doc/TaskJuggler/FormatListAttribute.html +24 -4
  43. data/doc/TaskJuggler/GanttChart.html +147 -126
  44. data/doc/TaskJuggler/GanttContainer.html +34 -14
  45. data/doc/TaskJuggler/GanttHeader.html +28 -8
  46. data/doc/TaskJuggler/GanttHeaderScaleItem.html +24 -4
  47. data/doc/TaskJuggler/GanttLine.html +38 -18
  48. data/doc/TaskJuggler/GanttLoadStack.html +26 -6
  49. data/doc/TaskJuggler/GanttMilestone.html +34 -14
  50. data/doc/TaskJuggler/GanttRouter.html +50 -30
  51. data/doc/TaskJuggler/GanttTaskBar.html +34 -14
  52. data/doc/TaskJuggler/HTMLDocument.html +26 -6
  53. data/doc/TaskJuggler/HTMLGraphics.html +30 -10
  54. data/doc/TaskJuggler/Interval.html +40 -22
  55. data/doc/TaskJuggler/IntervalListAttribute.html +28 -8
  56. data/doc/TaskJuggler/JobInfo.html +24 -4
  57. data/doc/TaskJuggler/Journal.html +226 -147
  58. data/doc/TaskJuggler/JournalEntry.html +22 -2
  59. data/doc/TaskJuggler/JournalEntryList.html +129 -112
  60. data/doc/TaskJuggler/KeywordArray.html +26 -6
  61. data/doc/TaskJuggler/KeywordDocumentation.html +46 -26
  62. data/doc/TaskJuggler/Limits.html +152 -123
  63. data/doc/TaskJuggler/Limits/Limit.html +149 -70
  64. data/doc/TaskJuggler/LimitsAttribute.html +36 -51
  65. data/doc/TaskJuggler/ListAttributeBase.html +24 -4
  66. data/doc/TaskJuggler/Log.html +50 -32
  67. data/doc/TaskJuggler/LogFile.html +37 -17
  68. data/doc/TaskJuggler/LogicalAttribute.html +53 -33
  69. data/doc/TaskJuggler/LogicalExpression.html +26 -6
  70. data/doc/TaskJuggler/LogicalExpressionAttribute.html +32 -12
  71. data/doc/TaskJuggler/LogicalFlag.html +42 -22
  72. data/doc/TaskJuggler/LogicalFunction.html +204 -140
  73. data/doc/TaskJuggler/LogicalOperation.html +135 -111
  74. data/doc/TaskJuggler/Macro.html +22 -2
  75. data/doc/TaskJuggler/MacroParser.html +32 -12
  76. data/doc/TaskJuggler/MacroTable.html +32 -12
  77. data/doc/TaskJuggler/ManagerResponsibilities.html +24 -4
  78. data/doc/TaskJuggler/ManagerStatusRecord.html +24 -4
  79. data/doc/TaskJuggler/Message.html +24 -4
  80. data/doc/TaskJuggler/MessageHandler.html +24 -4
  81. data/doc/TaskJuggler/Navigator.html +104 -71
  82. data/doc/TaskJuggler/NavigatorElement.html +32 -12
  83. data/doc/TaskJuggler/NikuProject.html +22 -2
  84. data/doc/TaskJuggler/NikuReport.html +310 -228
  85. data/doc/TaskJuggler/NikuResource.html +22 -2
  86. data/doc/TaskJuggler/NodeListAttribute.html +615 -0
  87. data/doc/TaskJuggler/OnShiftCache.html +32 -12
  88. data/doc/TaskJuggler/ProcessIntercom.html +205 -78
  89. data/doc/TaskJuggler/ProcessIntercomIface.html +26 -6
  90. data/doc/TaskJuggler/Project.html +708 -660
  91. data/doc/TaskJuggler/ProjectBroker.html +506 -304
  92. data/doc/TaskJuggler/ProjectBrokerIface.html +61 -41
  93. data/doc/TaskJuggler/ProjectFileParser.html +429 -373
  94. data/doc/TaskJuggler/ProjectFileScanner.html +1790 -0
  95. data/doc/TaskJuggler/ProjectRecord.html +80 -60
  96. data/doc/TaskJuggler/ProjectServer.html +312 -237
  97. data/doc/TaskJuggler/ProjectServerIface.html +101 -43
  98. data/doc/TaskJuggler/PropertyAttribute.html +32 -12
  99. data/doc/TaskJuggler/PropertyList.html +166 -145
  100. data/doc/TaskJuggler/PropertySet.html +254 -224
  101. data/doc/TaskJuggler/PropertyTreeNode.html +670 -536
  102. data/doc/TaskJuggler/Query.html +169 -148
  103. data/doc/TaskJuggler/RTFHandlers.html +622 -0
  104. data/doc/TaskJuggler/RTFNavigator.html +28 -8
  105. data/doc/TaskJuggler/RTFQuery.html +40 -20
  106. data/doc/TaskJuggler/RTFReport.html +62 -25
  107. data/doc/TaskJuggler/RTFReportLink.html +765 -0
  108. data/doc/TaskJuggler/RealFormat.html +26 -6
  109. data/doc/TaskJuggler/RealFormatAttribute.html +26 -6
  110. data/doc/TaskJuggler/ReferenceAttribute.html +59 -39
  111. data/doc/TaskJuggler/Report.html +402 -251
  112. data/doc/TaskJuggler/ReportBase.html +162 -137
  113. data/doc/TaskJuggler/ReportContext.html +112 -29
  114. data/doc/TaskJuggler/ReportServer.html +89 -64
  115. data/doc/TaskJuggler/ReportServerIface.html +75 -55
  116. data/doc/TaskJuggler/ReportServerRecord.html +54 -31
  117. data/doc/TaskJuggler/ReportServlet.html +980 -0
  118. data/doc/TaskJuggler/ReportTable.html +41 -21
  119. data/doc/TaskJuggler/ReportTableCell.html +214 -170
  120. data/doc/TaskJuggler/ReportTableColumn.html +30 -10
  121. data/doc/TaskJuggler/ReportTableLegend.html +36 -16
  122. data/doc/TaskJuggler/ReportTableLine.html +32 -12
  123. data/doc/TaskJuggler/Resource.html +99 -87
  124. data/doc/TaskJuggler/ResourceListAttribute.html +59 -39
  125. data/doc/TaskJuggler/ResourceListRE.html +47 -26
  126. data/doc/TaskJuggler/ResourceScenario.html +403 -437
  127. data/doc/TaskJuggler/RichText.html +26 -6
  128. data/doc/TaskJuggler/RichTextAttribute.html +50 -30
  129. data/doc/TaskJuggler/RichTextDocument.html +37 -17
  130. data/doc/TaskJuggler/RichTextElement.html +475 -413
  131. data/doc/TaskJuggler/RichTextException.html +22 -2
  132. data/doc/TaskJuggler/RichTextFunctionExample.html +28 -8
  133. data/doc/TaskJuggler/RichTextFunctionHandler.html +24 -4
  134. data/doc/TaskJuggler/RichTextImage.html +22 -2
  135. data/doc/TaskJuggler/RichTextIntermediate.html +38 -18
  136. data/doc/TaskJuggler/RichTextParser.html +56 -34
  137. data/doc/TaskJuggler/RichTextScanner.html +82 -61
  138. data/doc/TaskJuggler/RichTextSnip.html +34 -14
  139. data/doc/TaskJuggler/RichTextSyntaxRules.html +507 -353
  140. data/doc/TaskJuggler/Scenario.html +22 -2
  141. data/doc/TaskJuggler/ScenarioData.html +30 -46
  142. data/doc/TaskJuggler/ScenarioListAttribute.html +38 -18
  143. data/doc/TaskJuggler/Scoreboard.html +42 -22
  144. data/doc/TaskJuggler/SheetHandlerBase.html +40 -20
  145. data/doc/TaskJuggler/SheetReceiver.html +333 -295
  146. data/doc/TaskJuggler/SheetSender.html +253 -230
  147. data/doc/TaskJuggler/Shift.html +26 -6
  148. data/doc/TaskJuggler/ShiftAssignment.html +89 -73
  149. data/doc/TaskJuggler/ShiftAssignments.html +226 -234
  150. data/doc/TaskJuggler/ShiftAssignmentsAttribute.html +39 -54
  151. data/doc/TaskJuggler/ShiftScenario.html +28 -8
  152. data/doc/TaskJuggler/SortListAttribute.html +34 -14
  153. data/doc/TaskJuggler/SourceFileInfo.html +24 -4
  154. data/doc/TaskJuggler/StatusSheetReceiver.html +24 -3
  155. data/doc/TaskJuggler/StatusSheetReport.html +168 -153
  156. data/doc/TaskJuggler/StatusSheetSender.html +24 -3
  157. data/doc/TaskJuggler/StringAttribute.html +38 -18
  158. data/doc/TaskJuggler/SymbolAttribute.html +32 -12
  159. data/doc/TaskJuggler/SyntaxReference.html +40 -20
  160. data/doc/TaskJuggler/TOCEntry.html +26 -6
  161. data/doc/TaskJuggler/TSResourceRecord.html +22 -2
  162. data/doc/TaskJuggler/TSTaskRecord.html +22 -2
  163. data/doc/TaskJuggler/TableColumnDefinition.html +59 -22
  164. data/doc/TaskJuggler/TableOfContents.html +26 -6
  165. data/doc/TaskJuggler/TableReport.html +937 -904
  166. data/doc/TaskJuggler/Task.html +55 -36
  167. data/doc/TaskJuggler/TaskDependency.html +24 -4
  168. data/doc/TaskJuggler/TaskListAttribute.html +50 -30
  169. data/doc/TaskJuggler/TaskListRE.html +27 -7
  170. data/doc/TaskJuggler/TaskScenario.html +1273 -1153
  171. data/doc/TaskJuggler/TextFormatter.html +28 -8
  172. data/doc/TaskJuggler/TextParser.html +585 -338
  173. data/doc/TaskJuggler/TextParser/Pattern.html +54 -34
  174. data/doc/TaskJuggler/TextParser/Rule.html +95 -73
  175. data/doc/TaskJuggler/TextParser/StackElement.html +39 -17
  176. data/doc/TaskJuggler/TextParser/TextParserResultArray.html +24 -4
  177. data/doc/TaskJuggler/TextParser/TokenDoc.html +22 -2
  178. data/doc/TaskJuggler/TextReport.html +28 -8
  179. data/doc/TaskJuggler/TextScanner.html +400 -1404
  180. data/doc/TaskJuggler/TextScanner/BufferStreamHandle.html +28 -240
  181. data/doc/TaskJuggler/TextScanner/FileStreamHandle.html +37 -184
  182. data/doc/TaskJuggler/TextScanner/MacroStackEntry.html +682 -0
  183. data/doc/TaskJuggler/TextScanner/StreamHandle.html +342 -67
  184. data/doc/TaskJuggler/TimeSheet.html +48 -28
  185. data/doc/TaskJuggler/TimeSheetReceiver.html +24 -3
  186. data/doc/TaskJuggler/TimeSheetRecord.html +47 -27
  187. data/doc/TaskJuggler/TimeSheetReport.html +154 -133
  188. data/doc/TaskJuggler/TimeSheetSender.html +24 -3
  189. data/doc/TaskJuggler/TimeSheetSummary.html +137 -91
  190. data/doc/TaskJuggler/TimeSheets.html +26 -6
  191. data/doc/TaskJuggler/Tj3AppBase.html +85 -58
  192. data/doc/TaskJuggler/Tj3Client.html +292 -238
  193. data/doc/TaskJuggler/Tj3Daemon.html +159 -74
  194. data/doc/TaskJuggler/Tj3SheetAppBase.html +26 -6
  195. data/doc/TaskJuggler/Tj3SsReceiver.html +26 -6
  196. data/doc/TaskJuggler/Tj3SsSender.html +53 -26
  197. data/doc/TaskJuggler/Tj3TsReceiver.html +28 -7
  198. data/doc/TaskJuggler/Tj3TsSender.html +26 -6
  199. data/doc/TaskJuggler/Tj3TsSummary.html +26 -6
  200. data/doc/TaskJuggler/TjException.html +22 -2
  201. data/doc/TaskJuggler/TjTime.html +216 -160
  202. data/doc/TaskJuggler/TjpExample.html +34 -14
  203. data/doc/TaskJuggler/TjpExportRE.html +403 -407
  204. data/doc/TaskJuggler/TjpSyntaxRules.html +4805 -4408
  205. data/doc/TaskJuggler/URLParameter.html +649 -0
  206. data/doc/TaskJuggler/UserManual.html +42 -22
  207. data/doc/TaskJuggler/WebServer.html +702 -0
  208. data/doc/TaskJuggler/WorkingHours.html +38 -18
  209. data/doc/TaskJuggler/WorkingHoursAttribute.html +61 -41
  210. data/doc/TaskJuggler/XMLBlob.html +24 -4
  211. data/doc/TaskJuggler/XMLComment.html +24 -4
  212. data/doc/TaskJuggler/XMLDocument.html +30 -10
  213. data/doc/TaskJuggler/XMLElement.html +34 -14
  214. data/doc/TaskJuggler/XMLNamedText.html +22 -2
  215. data/doc/TaskJuggler/XMLText.html +24 -4
  216. data/doc/index.html +1841 -1666
  217. data/doc/lib/AccountScenario_rb.html +1 -1
  218. data/doc/lib/Account_rb.html +1 -1
  219. data/doc/lib/Allocation_rb.html +1 -1
  220. data/doc/lib/AppConfig_rb.html +2 -2
  221. data/doc/lib/AttributeBase_rb.html +1 -1
  222. data/doc/lib/AttributeDefinition_rb.html +1 -1
  223. data/doc/lib/Attributes_rb.html +2 -2
  224. data/doc/lib/BatchProcessor_rb.html +1 -1
  225. data/doc/lib/Booking_rb.html +1 -1
  226. data/doc/lib/ChargeSet_rb.html +1 -1
  227. data/doc/lib/Charge_rb.html +1 -1
  228. data/doc/lib/HTMLDocument_rb.html +1 -1
  229. data/doc/lib/Interval_rb.html +1 -1
  230. data/doc/lib/Journal_rb.html +2 -2
  231. data/doc/lib/KeywordArray_rb.html +1 -1
  232. data/doc/lib/KeywordDocumentation_rb.html +1 -1
  233. data/doc/lib/Limits_rb.html +2 -2
  234. data/doc/lib/LogFile_rb.html +2 -2
  235. data/doc/lib/Log_rb.html +1 -1
  236. data/doc/lib/LogicalExpression_rb.html +1 -1
  237. data/doc/lib/LogicalFunction_rb.html +2 -2
  238. data/doc/lib/LogicalOperation_rb.html +2 -2
  239. data/doc/lib/MacroParser_rb.html +1 -1
  240. data/doc/lib/MacroTable_rb.html +1 -1
  241. data/doc/lib/MessageHandler_rb.html +1 -1
  242. data/doc/lib/Message_rb.html +1 -1
  243. data/doc/lib/ProjectFileParser_rb.html +4 -8
  244. data/doc/lib/ProjectFileScanner_rb.html +67 -0
  245. data/doc/lib/Project_rb.html +2 -2
  246. data/doc/lib/PropertyList_rb.html +2 -2
  247. data/doc/lib/PropertySet_rb.html +2 -2
  248. data/doc/lib/PropertyTreeNode_rb.html +2 -2
  249. data/doc/lib/Query_rb.html +2 -2
  250. data/doc/lib/RTFHandlers_rb.html +73 -0
  251. data/doc/lib/RTFNavigator_rb.html +1 -1
  252. data/doc/lib/RTFQuery_rb.html +1 -1
  253. data/doc/lib/RTFReportLink_rb.html +71 -0
  254. data/doc/lib/RTFReport_rb.html +2 -2
  255. data/doc/lib/RealFormat_rb.html +1 -1
  256. data/doc/lib/ResourceScenario_rb.html +2 -2
  257. data/doc/lib/Resource_rb.html +2 -2
  258. data/doc/lib/RichTextDocument_rb.html +1 -1
  259. data/doc/lib/RichTextElement_rb.html +2 -2
  260. data/doc/lib/RichTextFunctionExample_rb.html +1 -1
  261. data/doc/lib/RichTextFunctionHandler_rb.html +1 -1
  262. data/doc/lib/RichTextParser_rb.html +2 -2
  263. data/doc/lib/RichTextScanner_rb.html +2 -2
  264. data/doc/lib/RichTextSnip_rb.html +1 -1
  265. data/doc/lib/RichTextSyntaxRules_rb.html +2 -2
  266. data/doc/lib/RichText_rb.html +1 -1
  267. data/doc/lib/RuntimeConfig_rb.html +1 -1
  268. data/doc/lib/ScenarioData_rb.html +2 -2
  269. data/doc/lib/Scenario_rb.html +1 -1
  270. data/doc/lib/Scoreboard_rb.html +1 -1
  271. data/doc/lib/SheetHandlerBase_rb.html +1 -1
  272. data/doc/lib/SheetReceiver_rb.html +2 -2
  273. data/doc/lib/SheetSender_rb.html +4 -2
  274. data/doc/lib/ShiftAssignments_rb.html +4 -2
  275. data/doc/lib/ShiftScenario_rb.html +1 -1
  276. data/doc/lib/Shift_rb.html +1 -1
  277. data/doc/lib/SourceFileInfo_rb.html +1 -1
  278. data/doc/lib/StatusSheetReceiver_rb.html +2 -2
  279. data/doc/lib/StatusSheetSender_rb.html +2 -2
  280. data/doc/lib/SyntaxReference_rb.html +1 -1
  281. data/doc/lib/TOCEntry_rb.html +1 -1
  282. data/doc/lib/TableColumnDefinition_rb.html +2 -2
  283. data/doc/lib/TableOfContents_rb.html +1 -1
  284. data/doc/lib/TaskDependency_rb.html +1 -1
  285. data/doc/lib/TaskJuggler_rb.html +2 -2
  286. data/doc/lib/TaskScenario_rb.html +2 -2
  287. data/doc/lib/Task_rb.html +2 -2
  288. data/doc/lib/TextFormatter_rb.html +1 -1
  289. data/doc/lib/TextParser/Pattern_rb.html +1 -1
  290. data/doc/lib/TextParser/Rule_rb.html +2 -2
  291. data/doc/lib/TextParser/StackElement_rb.html +2 -2
  292. data/doc/lib/TextParser/TokenDoc_rb.html +1 -1
  293. data/doc/lib/TextParser_rb.html +2 -2
  294. data/doc/lib/TextScanner_rb.html +6 -2
  295. data/doc/lib/TimeSheetReceiver_rb.html +2 -2
  296. data/doc/lib/TimeSheetSender_rb.html +2 -2
  297. data/doc/lib/TimeSheetSummary_rb.html +2 -2
  298. data/doc/lib/TimeSheets_rb.html +2 -2
  299. data/doc/lib/Tj3AppBase_rb.html +2 -2
  300. data/doc/lib/Tj3Config_rb.html +2 -2
  301. data/doc/lib/Tj3SheetAppBase_rb.html +2 -2
  302. data/doc/lib/TjException_rb.html +1 -1
  303. data/doc/lib/TjTime_rb.html +2 -2
  304. data/doc/lib/TjpExample_rb.html +1 -1
  305. data/doc/lib/TjpSyntaxRules_rb.html +2 -2
  306. data/doc/lib/URLParameter_rb.html +67 -0
  307. data/doc/lib/UTF8String_rb.html +1 -1
  308. data/doc/lib/UserManual_rb.html +1 -1
  309. data/doc/lib/WorkingHours_rb.html +1 -1
  310. data/doc/lib/XMLDocument_rb.html +2 -2
  311. data/doc/lib/XMLElement_rb.html +1 -1
  312. data/doc/lib/daemon/Daemon_rb.html +1 -1
  313. data/doc/lib/daemon/ProcessIntercom_rb.html +2 -2
  314. data/doc/lib/daemon/ProjectBroker_rb.html +4 -2
  315. data/doc/lib/daemon/ProjectServer_rb.html +2 -2
  316. data/doc/lib/daemon/ReportServer_rb.html +2 -2
  317. data/doc/lib/daemon/WebServer_rb.html +75 -0
  318. data/doc/lib/deep_copy_rb.html +2 -2
  319. data/doc/lib/reports/CSVFile_rb.html +2 -2
  320. data/doc/lib/reports/ColumnTable_rb.html +1 -1
  321. data/doc/lib/reports/GanttChart_rb.html +2 -2
  322. data/doc/lib/reports/GanttContainer_rb.html +1 -1
  323. data/doc/lib/reports/GanttHeaderScaleItem_rb.html +1 -1
  324. data/doc/lib/reports/GanttHeader_rb.html +1 -1
  325. data/doc/lib/reports/GanttLine_rb.html +1 -1
  326. data/doc/lib/reports/GanttLoadStack_rb.html +1 -1
  327. data/doc/lib/reports/GanttMilestone_rb.html +1 -1
  328. data/doc/lib/reports/GanttRouter_rb.html +1 -1
  329. data/doc/lib/reports/GanttTaskBar_rb.html +1 -1
  330. data/doc/lib/reports/HTMLGraphics_rb.html +1 -1
  331. data/doc/lib/reports/Navigator_rb.html +2 -2
  332. data/doc/lib/reports/NikuReport_rb.html +2 -2
  333. data/doc/lib/reports/ReportBase_rb.html +2 -2
  334. data/doc/lib/reports/ReportContext_rb.html +2 -2
  335. data/doc/lib/reports/ReportTableCell_rb.html +2 -2
  336. data/doc/lib/reports/ReportTableColumn_rb.html +1 -1
  337. data/doc/lib/reports/ReportTableLegend_rb.html +1 -1
  338. data/doc/lib/reports/ReportTableLine_rb.html +1 -1
  339. data/doc/lib/reports/ReportTable_rb.html +2 -2
  340. data/doc/lib/reports/Report_rb.html +2 -2
  341. data/doc/lib/reports/ResourceListRE_rb.html +2 -2
  342. data/doc/lib/reports/StatusSheetReport_rb.html +2 -2
  343. data/doc/lib/reports/TableReport_rb.html +2 -2
  344. data/doc/lib/reports/TaskListRE_rb.html +2 -2
  345. data/doc/lib/reports/TextReport_rb.html +1 -1
  346. data/doc/lib/reports/TimeSheetReport_rb.html +2 -2
  347. data/doc/lib/reports/TjpExportRE_rb.html +2 -2
  348. data/doc/lib/ruby-signal-bug_rb.html +1 -1
  349. data/doc/lib/taskjuggler3_rb.html +2 -2
  350. data/doc/lib/tj3client_rb.html +2 -2
  351. data/doc/lib/tj3d_rb.html +2 -2
  352. data/doc/lib/tj3man_rb.html +1 -1
  353. data/doc/lib/tj3ss_receiver_rb.html +1 -1
  354. data/doc/lib/tj3ss_sender_rb.html +2 -2
  355. data/doc/lib/tj3ts_receiver_rb.html +2 -2
  356. data/doc/lib/tj3ts_sender_rb.html +1 -1
  357. data/doc/lib/tj3ts_summary_rb.html +1 -1
  358. data/doc/rdoc.css +9 -4
  359. data/examples/tutorial.tjp +17 -15
  360. data/gem_spec.rb +3 -0
  361. data/lib/AppConfig.rb +3 -1
  362. data/lib/Attributes.rb +10 -8
  363. data/lib/Journal.rb +55 -20
  364. data/lib/Limits.rb +72 -46
  365. data/lib/LogFile.rb +3 -3
  366. data/lib/LogicalFunction.rb +19 -6
  367. data/lib/LogicalOperation.rb +5 -1
  368. data/lib/Project.rb +37 -9
  369. data/lib/ProjectFileParser.rb +25 -22
  370. data/lib/ProjectFileScanner.rb +365 -0
  371. data/lib/PropertyList.rb +2 -1
  372. data/lib/PropertySet.rb +14 -4
  373. data/lib/PropertyTreeNode.rb +42 -29
  374. data/lib/Query.rb +3 -1
  375. data/lib/RTFHandlers.rb +35 -0
  376. data/lib/RTFReport.rb +23 -6
  377. data/lib/RTFReportLink.rb +72 -0
  378. data/lib/Resource.rb +8 -16
  379. data/lib/ResourceScenario.rb +1 -22
  380. data/lib/RichTextElement.rb +42 -0
  381. data/lib/RichTextParser.rb +6 -4
  382. data/lib/RichTextScanner.rb +5 -5
  383. data/lib/RichTextSyntaxRules.rb +48 -10
  384. data/lib/ScenarioData.rb +5 -3
  385. data/lib/SheetReceiver.rb +24 -6
  386. data/lib/SheetSender.rb +17 -13
  387. data/lib/ShiftAssignments.rb +56 -52
  388. data/lib/StatusSheetReceiver.rb +1 -0
  389. data/lib/StatusSheetSender.rb +1 -0
  390. data/lib/TableColumnDefinition.rb +4 -2
  391. data/lib/Task.rb +8 -9
  392. data/lib/TaskJuggler.rb +21 -11
  393. data/lib/TaskScenario.rb +61 -26
  394. data/lib/TextParser.rb +268 -106
  395. data/lib/TextParser/Rule.rb +4 -2
  396. data/lib/TextParser/StackElement.rb +6 -4
  397. data/lib/TextScanner.rb +283 -700
  398. data/lib/TimeSheetReceiver.rb +1 -0
  399. data/lib/TimeSheetSender.rb +1 -0
  400. data/lib/TimeSheetSummary.rb +51 -26
  401. data/lib/TimeSheets.rb +1 -1
  402. data/lib/Tj3AppBase.rb +8 -1
  403. data/lib/Tj3Config.rb +1 -1
  404. data/lib/TjTime.rb +5 -0
  405. data/lib/TjpSyntaxRules.rb +360 -144
  406. data/lib/URLParameter.rb +30 -0
  407. data/lib/XMLDocument.rb +2 -2
  408. data/lib/daemon/ProcessIntercom.rb +50 -9
  409. data/lib/daemon/ProjectBroker.rb +63 -10
  410. data/lib/daemon/ProjectServer.rb +47 -16
  411. data/lib/daemon/ReportServer.rb +9 -4
  412. data/lib/daemon/WebServer.rb +204 -0
  413. data/lib/deep_copy.rb +4 -1
  414. data/lib/reports/CSVFile.rb +150 -66
  415. data/lib/reports/GanttChart.rb +2 -1
  416. data/lib/reports/Navigator.rb +18 -5
  417. data/lib/reports/NikuReport.rb +32 -2
  418. data/lib/reports/Report.rb +65 -37
  419. data/lib/reports/ReportBase.rb +14 -9
  420. data/lib/reports/ReportContext.rb +19 -4
  421. data/lib/reports/ReportTable.rb +2 -2
  422. data/lib/reports/ReportTableCell.rb +54 -30
  423. data/lib/reports/ResourceListRE.rb +4 -3
  424. data/lib/reports/StatusSheetReport.rb +8 -13
  425. data/lib/reports/TableReport.rb +47 -32
  426. data/lib/reports/TaskListRE.rb +3 -3
  427. data/lib/reports/TimeSheetReport.rb +14 -5
  428. data/lib/reports/TjpExportRE.rb +14 -19
  429. data/lib/taskjuggler3.rb +15 -0
  430. data/lib/tj3client.rb +9 -7
  431. data/lib/tj3d.rb +38 -10
  432. data/lib/tj3ss_sender.rb +7 -0
  433. data/lib/tj3ts_receiver.rb +1 -0
  434. data/manual/Day_To_Day_Juggling +1 -1
  435. data/manual/Rich_Text_Attributes +8 -0
  436. data/manual/TaskJuggler_2x_Migration +7 -0
  437. data/manual/The_TaskJuggler_Syntax +20 -6
  438. data/prj_cfg.rb +3 -2
  439. data/tasks/changelog.rake +36 -0
  440. data/tasks/csts.rake +2 -3
  441. data/tasks/gem.rake +10 -0
  442. data/tasks/missing.rake +0 -17
  443. data/test/TestSuite/ReportGenerator/Correct/Journal.html +63 -0
  444. data/test/TestSuite/ReportGenerator/Correct/Journal.tjp +14 -0
  445. data/test/TestSuite/{HTML-Reports/LogicalFunctions.tjp → ReportGenerator/Correct/LogicalFunctions1.tjp} +2 -2
  446. data/test/TestSuite/ReportGenerator/Correct/LogicalFunctions2.csv +3 -0
  447. data/test/TestSuite/ReportGenerator/Correct/LogicalFunctions2.tjp +19 -0
  448. data/test/TestSuite/ReportGenerator/Correct/css/tjmanual.css +66 -0
  449. data/test/TestSuite/ReportGenerator/Correct/css/tjreport.css +407 -0
  450. data/test/TestSuite/ReportGenerator/Correct/icons/details.png +0 -0
  451. data/test/TestSuite/ReportGenerator/Correct/icons/flag-green.png +0 -0
  452. data/test/TestSuite/ReportGenerator/Correct/icons/flag-red.png +0 -0
  453. data/test/TestSuite/ReportGenerator/Correct/icons/flag-yellow.png +0 -0
  454. data/test/TestSuite/ReportGenerator/Correct/icons/resource.png +0 -0
  455. data/test/TestSuite/ReportGenerator/Correct/icons/resourcegroup.png +0 -0
  456. data/test/TestSuite/ReportGenerator/Correct/icons/task.png +0 -0
  457. data/test/TestSuite/ReportGenerator/Correct/icons/taskgroup.png +0 -0
  458. data/test/TestSuite/ReportGenerator/Correct/icons/trend-down.png +0 -0
  459. data/test/TestSuite/ReportGenerator/Correct/icons/trend-flat.png +0 -0
  460. data/test/TestSuite/ReportGenerator/Correct/icons/trend-up.png +0 -0
  461. data/test/TestSuite/ReportGenerator/Correct/opennodes.csv +2 -0
  462. data/test/TestSuite/ReportGenerator/Correct/opennodes.tjp +26 -0
  463. data/test/TestSuite/ReportGenerator/Correct/refs/Journal-1.csv +6 -0
  464. data/test/TestSuite/ReportGenerator/Correct/refs/LogicalFunctions1-1.csv +7 -0
  465. data/test/TestSuite/ReportGenerator/Correct/refs/LogicalFunctions2-1.csv +2 -0
  466. data/test/TestSuite/ReportGenerator/Correct/refs/opennodes-1.csv +2 -0
  467. data/test/TestSuite/ReportGenerator/Correct/scripts/wz_tooltip.js +1301 -0
  468. data/test/TestSuite/ReportGenerator/Errors/rtp_report_recursion.tjp +20 -0
  469. data/test/TestSuite/Scheduler/Correct/Container.html +349 -0
  470. data/test/TestSuite/Scheduler/Correct/Limits.tjp +11 -4
  471. data/test/TestSuite/Scheduler/Correct/Shift2.html +464 -150
  472. data/test/TestSuite/Scheduler/Correct/TimeSheet2.html +108 -0
  473. data/test/TestSuite/Scheduler/Correct/TimeSheet2.tjp +7 -0
  474. data/test/TestSuite/Scheduler/Correct/css/tjmanual.css +14 -0
  475. data/test/TestSuite/Scheduler/Correct/css/tjreport.css +233 -21
  476. data/test/TestSuite/Scheduler/Correct/scripts/wz_tooltip.js +20 -20
  477. data/test/TestSuite/StatusSheetTemplates/project.tji +35 -0
  478. data/test/TestSuite/StatusSheetTemplates/project.tjp +56 -0
  479. data/test/TestSuite/StatusSheets/run +3 -2
  480. data/test/TestSuite/Syntax/Correct/Include.tjp +1 -1
  481. data/test/TestSuite/Syntax/Correct/Macro-1.tjp +1 -1
  482. data/test/TestSuite/Syntax/Correct/Macro-2.tjp +6 -0
  483. data/test/TestSuite/Syntax/Correct/Macro-3.tjp +14 -0
  484. data/test/TestSuite/Syntax/Correct/ResourcePrefix.html +32 -0
  485. data/test/TestSuite/Syntax/Correct/css/tjmanual.css +66 -0
  486. data/test/TestSuite/Syntax/Correct/css/tjreport.css +407 -0
  487. data/test/TestSuite/Syntax/Correct/icons/details.png +0 -0
  488. data/test/TestSuite/Syntax/Correct/icons/flag-green.png +0 -0
  489. data/test/TestSuite/Syntax/Correct/icons/flag-red.png +0 -0
  490. data/test/TestSuite/Syntax/Correct/icons/flag-yellow.png +0 -0
  491. data/test/TestSuite/Syntax/Correct/icons/resource.png +0 -0
  492. data/test/TestSuite/Syntax/Correct/icons/resourcegroup.png +0 -0
  493. data/test/TestSuite/Syntax/Correct/icons/task.png +0 -0
  494. data/test/TestSuite/Syntax/Correct/icons/taskgroup.png +0 -0
  495. data/test/TestSuite/Syntax/Correct/icons/trend-down.png +0 -0
  496. data/test/TestSuite/Syntax/Correct/icons/trend-flat.png +0 -0
  497. data/test/TestSuite/Syntax/Correct/icons/trend-up.png +0 -0
  498. data/test/TestSuite/Syntax/Correct/include/dir1/file2.tji +3 -0
  499. data/test/TestSuite/Syntax/Correct/include/dir1/file5.tji +2 -0
  500. data/test/TestSuite/Syntax/Correct/include/dir3/all.tji +3 -0
  501. data/test/TestSuite/Syntax/Correct/include/dir3/file1.tji +2 -0
  502. data/test/TestSuite/Syntax/Correct/include/dir3/file2.tji +1 -0
  503. data/test/TestSuite/Syntax/Correct/scripts/wz_tooltip.js +1301 -0
  504. data/test/TestSuite/Syntax/Correct/tutorial.tjp +13 -13
  505. data/test/TestSuite/Syntax/Errors/empty.tjp +1 -1
  506. data/test/TestSuite/Syntax/Errors/include_recursion.tjp +1 -0
  507. data/test/TestSuite/Syntax/Errors/macro_stack_overflow.tjp +2 -1
  508. data/test/TestSuite/Syntax/Errors/{eof_in_istring1.tjp → no_token_match1.tjp} +2 -2
  509. data/test/TestSuite/Syntax/Errors/{eof_in_istring2.tjp → no_token_match2.tjp} +2 -2
  510. data/test/TestSuite/Syntax/Errors/{eof_in_istring3.tjp → no_token_match3.tjp} +1 -1
  511. data/test/TestSuite/Syntax/Errors/{eof_in_istring4.tjp → no_token_match4.tjp} +1 -1
  512. data/test/TestSuite/Syntax/Errors/{eof_in_istring5.tjp → no_token_match5.tjp} +1 -1
  513. data/test/TestSuite/Syntax/Errors/not_scheduled.tjp +13 -0
  514. data/test/TestSuite/Syntax/Errors/unsupported_token.tjp +1 -1
  515. data/test/TestSuite/TimeSheets/run +5 -5
  516. data/test/test_CSVFile.rb +75 -0
  517. data/test/test_Limits.rb +63 -5
  518. data/test/test_ProjectFileScanner.rb +163 -0
  519. data/test/test_ReportGenerator.rb +81 -0
  520. data/test/test_RichText.rb +21 -3
  521. data/test/test_Scheduler.rb +1 -1
  522. data/test/test_ShiftAssignments.rb +4 -4
  523. data/test/test_Syntax.rb +1 -1
  524. data/test/test_URLParameter.rb +30 -0
  525. metadata +126 -32
  526. data/test/TestSuite/Scheduler/Errors/not_scheduled.tjp +0 -8
  527. data/test/TestSuite/Syntax/Errors/bad_comment.tjp +0 -7
  528. data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/boss_2002-03-01.tji +0 -36
  529. data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/dev1_2002-03-01.tji +0 -48
  530. data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/dev2_2002-03-01.tji +0 -67
  531. data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/dev3_2002-03-01.tji +0 -67
  532. data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/doc_2002-03-01.tji +0 -48
  533. data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/resources.yml +0 -31
  534. data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/test_2002-03-01.tji +0 -36
  535. data/test/TestSuite/TimeSheets/TimeSheetTemplates/acceptable_intervals +0 -1
  536. data/test/TestSuite/TimeSheets/TimeSheets/2002-03-01/all.tji +0 -1
  537. data/test/TestSuite/TimeSheets/TimeSheets/2002-03-01/dev2_2002-03-01.tji +0 -54
  538. data/test/TestSuite/TimeSheets/TimeSheets/all.tji +0 -2
  539. data/test/TestSuite/TimeSheets/receiver.log +0 -102
  540. data/test/TestSuite/TimeSheets/sender.log +0 -794
  541. data/test/TestSuite/TimeSheets/summary.log +0 -884
  542. data/test/TestSuite/TimeSheets/timesheets.log +0 -45
  543. data/test/TestSuite/TimeSheets/tj3d.log +0 -292
  544. data/test/test_TextScanner.rb +0 -95
@@ -69,11 +69,11 @@
69
69
  <h3 class="section-header">Methods</h3>
70
70
  <ul class="link-list">
71
71
 
72
- <li><a href="#M001511">::new</a></li>
72
+ <li><a href="#method-c-new">::new</a></li>
73
73
 
74
- <li><a href="#M001512">#eval</a></li>
74
+ <li><a href="#method-i-eval">#eval</a></li>
75
75
 
76
- <li><a href="#M001513">#to_s</a></li>
76
+ <li><a href="#method-i-to_s">#to_s</a></li>
77
77
 
78
78
  </ul>
79
79
  </div>
@@ -90,6 +90,8 @@
90
90
  <h3 class="section-header">Files</h3>
91
91
  <ul>
92
92
 
93
+ <li class="file"><a href="../CHANGELOG.html">CHANGELOG</a></li>
94
+
93
95
  <li class="file"><a href="../COPYING.html">COPYING</a></li>
94
96
 
95
97
  <li class="file"><a href="../README.html">README</a></li>
@@ -259,6 +261,8 @@
259
261
 
260
262
  <li><a href="../TaskJuggler/NikuResource.html">TaskJuggler::NikuResource</a></li>
261
263
 
264
+ <li><a href="../TaskJuggler/NodeListAttribute.html">TaskJuggler::NodeListAttribute</a></li>
265
+
262
266
  <li><a href="../TaskJuggler/OnShiftCache.html">TaskJuggler::OnShiftCache</a></li>
263
267
 
264
268
  <li><a href="../TaskJuggler/ProcessIntercom.html">TaskJuggler::ProcessIntercom</a></li>
@@ -273,6 +277,8 @@
273
277
 
274
278
  <li><a href="../TaskJuggler/ProjectFileParser.html">TaskJuggler::ProjectFileParser</a></li>
275
279
 
280
+ <li><a href="../TaskJuggler/ProjectFileScanner.html">TaskJuggler::ProjectFileScanner</a></li>
281
+
276
282
  <li><a href="../TaskJuggler/ProjectRecord.html">TaskJuggler::ProjectRecord</a></li>
277
283
 
278
284
  <li><a href="../TaskJuggler/ProjectServer.html">TaskJuggler::ProjectServer</a></li>
@@ -289,12 +295,16 @@
289
295
 
290
296
  <li><a href="../TaskJuggler/Query.html">TaskJuggler::Query</a></li>
291
297
 
298
+ <li><a href="../TaskJuggler/RTFHandlers.html">TaskJuggler::RTFHandlers</a></li>
299
+
292
300
  <li><a href="../TaskJuggler/RTFNavigator.html">TaskJuggler::RTFNavigator</a></li>
293
301
 
294
302
  <li><a href="../TaskJuggler/RTFQuery.html">TaskJuggler::RTFQuery</a></li>
295
303
 
296
304
  <li><a href="../TaskJuggler/RTFReport.html">TaskJuggler::RTFReport</a></li>
297
305
 
306
+ <li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
307
+
298
308
  <li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
299
309
 
300
310
  <li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
@@ -313,6 +323,8 @@
313
323
 
314
324
  <li><a href="../TaskJuggler/ReportServerRecord.html">TaskJuggler::ReportServerRecord</a></li>
315
325
 
326
+ <li><a href="../TaskJuggler/ReportServlet.html">TaskJuggler::ReportServlet</a></li>
327
+
316
328
  <li><a href="../TaskJuggler/ReportTable.html">TaskJuggler::ReportTable</a></li>
317
329
 
318
330
  <li><a href="../TaskJuggler/ReportTableCell.html">TaskJuggler::ReportTableCell</a></li>
@@ -441,6 +453,8 @@
441
453
 
442
454
  <li><a href="../TaskJuggler/TextScanner/FileStreamHandle.html">TaskJuggler::TextScanner::FileStreamHandle</a></li>
443
455
 
456
+ <li><a href="../TaskJuggler/TextScanner/MacroStackEntry.html">TaskJuggler::TextScanner::MacroStackEntry</a></li>
457
+
444
458
  <li><a href="../TaskJuggler/TextScanner/StreamHandle.html">TaskJuggler::TextScanner::StreamHandle</a></li>
445
459
 
446
460
  <li><a href="../TaskJuggler/TimeSheet.html">TaskJuggler::TimeSheet</a></li>
@@ -485,8 +499,12 @@
485
499
 
486
500
  <li><a href="../TaskJuggler/TjpSyntaxRules.html">TaskJuggler::TjpSyntaxRules</a></li>
487
501
 
502
+ <li><a href="../TaskJuggler/URLParameter.html">TaskJuggler::URLParameter</a></li>
503
+
488
504
  <li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
489
505
 
506
+ <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
507
+
490
508
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
491
509
 
492
510
  <li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
@@ -513,6 +531,8 @@
513
531
 
514
532
  <li><a href="../String.html">String</a></li>
515
533
 
534
+ <li><a href="../StringIO.html">StringIO</a></li>
535
+
516
536
  </ul>
517
537
  <div id="no-class-search-results" style="display: none;">No matching classes.</div>
518
538
  </div>
@@ -545,7 +565,7 @@ to true if the property provided by the expression has the flag assigned.
545
565
 
546
566
 
547
567
  <div id="new-method" class="method-detail ">
548
- <a name="M001511"></a>
568
+ <a name="method-c-new"></a>
549
569
 
550
570
  <div class="method-heading">
551
571
 
@@ -564,10 +584,10 @@ to true if the property provided by the expression has the flag assigned.
564
584
  <div class="method-source-code"
565
585
  id="new-source">
566
586
  <pre>
567
- <span class="ruby-comment cmt"># File lib/LogicalOperation.rb, line 216</span>
568
- 216: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">opnd</span>)
569
- 217: <span class="ruby-keyword kw">super</span>
570
- 218: <span class="ruby-keyword kw">end</span></pre>
587
+ <span class="ruby-comment cmt"># File lib/LogicalOperation.rb, line 220</span>
588
+ 220: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">opnd</span>)
589
+ 221: <span class="ruby-keyword kw">super</span>
590
+ 222: <span class="ruby-keyword kw">end</span></pre>
571
591
  </div>
572
592
 
573
593
  </div>
@@ -585,7 +605,7 @@ to true if the property provided by the expression has the flag assigned.
585
605
 
586
606
 
587
607
  <div id="eval-method" class="method-detail ">
588
- <a name="M001512"></a>
608
+ <a name="method-i-eval"></a>
589
609
 
590
610
  <div class="method-heading">
591
611
 
@@ -606,10 +626,10 @@ Return true if the property has the flag assigned.
606
626
  <div class="method-source-code"
607
627
  id="eval-source">
608
628
  <pre>
609
- <span class="ruby-comment cmt"># File lib/LogicalOperation.rb, line 221</span>
610
- 221: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">eval</span>(<span class="ruby-identifier">expr</span>)
611
- 222: <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>.<span class="ruby-identifier">property</span>[<span class="ruby-value str">'flags'</span>, <span class="ruby-value">0</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-ivar">@operand1</span>)
612
- 223: <span class="ruby-keyword kw">end</span></pre>
629
+ <span class="ruby-comment cmt"># File lib/LogicalOperation.rb, line 225</span>
630
+ 225: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">eval</span>(<span class="ruby-identifier">expr</span>)
631
+ 226: <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>.<span class="ruby-identifier">property</span>[<span class="ruby-value str">'flags'</span>, <span class="ruby-value">0</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-ivar">@operand1</span>)
632
+ 227: <span class="ruby-keyword kw">end</span></pre>
613
633
  </div>
614
634
 
615
635
  </div>
@@ -621,7 +641,7 @@ Return true if the property has the flag assigned.
621
641
 
622
642
 
623
643
  <div id="to-s-method" class="method-detail ">
624
- <a name="M001513"></a>
644
+ <a name="method-i-to_s"></a>
625
645
 
626
646
  <div class="method-heading">
627
647
 
@@ -640,14 +660,14 @@ Return true if the property has the flag assigned.
640
660
  <div class="method-source-code"
641
661
  id="to-s-source">
642
662
  <pre>
643
- <span class="ruby-comment cmt"># File lib/LogicalOperation.rb, line 225</span>
644
- 225: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>(<span class="ruby-identifier">query</span>)
645
- 226: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">query</span>
646
- 227: <span class="ruby-identifier">query</span>.<span class="ruby-identifier">property</span>[<span class="ruby-value str">'flags'</span>, <span class="ruby-value">0</span>].<span class="ruby-identifier">include</span>(<span class="ruby-ivar">@operand1</span>) <span class="ruby-operator">?</span> <span class="ruby-value str">'true'</span> <span class="ruby-operator">:</span> <span class="ruby-value str">'false'</span>
647
- 228: <span class="ruby-keyword kw">else</span>
648
- 229: <span class="ruby-ivar">@operand1</span>
649
- 230: <span class="ruby-keyword kw">end</span>
650
- 231: <span class="ruby-keyword kw">end</span></pre>
663
+ <span class="ruby-comment cmt"># File lib/LogicalOperation.rb, line 229</span>
664
+ 229: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>(<span class="ruby-identifier">query</span>)
665
+ 230: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">query</span>
666
+ 231: <span class="ruby-identifier">query</span>.<span class="ruby-identifier">property</span>[<span class="ruby-value str">'flags'</span>, <span class="ruby-value">0</span>].<span class="ruby-identifier">include</span>(<span class="ruby-ivar">@operand1</span>) <span class="ruby-operator">?</span> <span class="ruby-value str">'true'</span> <span class="ruby-operator">:</span> <span class="ruby-value str">'false'</span>
667
+ 232: <span class="ruby-keyword kw">else</span>
668
+ 233: <span class="ruby-ivar">@operand1</span>
669
+ 234: <span class="ruby-keyword kw">end</span>
670
+ 235: <span class="ruby-keyword kw">end</span></pre>
651
671
  </div>
652
672
 
653
673
  </div>
@@ -69,33 +69,35 @@
69
69
  <h3 class="section-header">Methods</h3>
70
70
  <ul class="link-list">
71
71
 
72
- <li><a href="#M001649">::new</a></li>
72
+ <li><a href="#method-c-new">::new</a></li>
73
73
 
74
- <li><a href="#M001651">#eval</a></li>
74
+ <li><a href="#method-i-eval">#eval</a></li>
75
75
 
76
- <li><a href="#M001654">#hasalert</a></li>
76
+ <li><a href="#method-i-hasalert">#hasalert</a></li>
77
77
 
78
- <li><a href="#M001655">#isactive</a></li>
78
+ <li><a href="#method-i-isactive">#isactive</a></li>
79
79
 
80
- <li><a href="#M001656">#isdependencyof</a></li>
80
+ <li><a href="#method-i-isdependencyof">#isdependencyof</a></li>
81
81
 
82
- <li><a href="#M001657">#isdutyof</a></li>
82
+ <li><a href="#method-i-isdutyof">#isdutyof</a></li>
83
83
 
84
- <li><a href="#M001658">#isleaf</a></li>
84
+ <li><a href="#method-i-isfeatureof">#isfeatureof</a></li>
85
85
 
86
- <li><a href="#M001659">#isongoing</a></li>
86
+ <li><a href="#method-i-isleaf">#isleaf</a></li>
87
87
 
88
- <li><a href="#M001660">#isresource</a></li>
88
+ <li><a href="#method-i-isongoing">#isongoing</a></li>
89
89
 
90
- <li><a href="#M001661">#istask</a></li>
90
+ <li><a href="#method-i-isresource">#isresource</a></li>
91
91
 
92
- <li><a href="#M001653">#properties</a></li>
92
+ <li><a href="#method-i-istask">#istask</a></li>
93
93
 
94
- <li><a href="#M001650">#setArgumentsAndCheck</a></li>
94
+ <li><a href="#method-i-properties">#properties</a></li>
95
95
 
96
- <li><a href="#M001652">#to_s</a></li>
96
+ <li><a href="#method-i-setArgumentsAndCheck">#setArgumentsAndCheck</a></li>
97
97
 
98
- <li><a href="#M001662">#treelevel</a></li>
98
+ <li><a href="#method-i-to_s">#to_s</a></li>
99
+
100
+ <li><a href="#method-i-treelevel">#treelevel</a></li>
99
101
 
100
102
  </ul>
101
103
  </div>
@@ -112,6 +114,8 @@
112
114
  <h3 class="section-header">Files</h3>
113
115
  <ul>
114
116
 
117
+ <li class="file"><a href="../CHANGELOG.html">CHANGELOG</a></li>
118
+
115
119
  <li class="file"><a href="../COPYING.html">COPYING</a></li>
116
120
 
117
121
  <li class="file"><a href="../README.html">README</a></li>
@@ -281,6 +285,8 @@
281
285
 
282
286
  <li><a href="../TaskJuggler/NikuResource.html">TaskJuggler::NikuResource</a></li>
283
287
 
288
+ <li><a href="../TaskJuggler/NodeListAttribute.html">TaskJuggler::NodeListAttribute</a></li>
289
+
284
290
  <li><a href="../TaskJuggler/OnShiftCache.html">TaskJuggler::OnShiftCache</a></li>
285
291
 
286
292
  <li><a href="../TaskJuggler/ProcessIntercom.html">TaskJuggler::ProcessIntercom</a></li>
@@ -295,6 +301,8 @@
295
301
 
296
302
  <li><a href="../TaskJuggler/ProjectFileParser.html">TaskJuggler::ProjectFileParser</a></li>
297
303
 
304
+ <li><a href="../TaskJuggler/ProjectFileScanner.html">TaskJuggler::ProjectFileScanner</a></li>
305
+
298
306
  <li><a href="../TaskJuggler/ProjectRecord.html">TaskJuggler::ProjectRecord</a></li>
299
307
 
300
308
  <li><a href="../TaskJuggler/ProjectServer.html">TaskJuggler::ProjectServer</a></li>
@@ -311,12 +319,16 @@
311
319
 
312
320
  <li><a href="../TaskJuggler/Query.html">TaskJuggler::Query</a></li>
313
321
 
322
+ <li><a href="../TaskJuggler/RTFHandlers.html">TaskJuggler::RTFHandlers</a></li>
323
+
314
324
  <li><a href="../TaskJuggler/RTFNavigator.html">TaskJuggler::RTFNavigator</a></li>
315
325
 
316
326
  <li><a href="../TaskJuggler/RTFQuery.html">TaskJuggler::RTFQuery</a></li>
317
327
 
318
328
  <li><a href="../TaskJuggler/RTFReport.html">TaskJuggler::RTFReport</a></li>
319
329
 
330
+ <li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
331
+
320
332
  <li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
321
333
 
322
334
  <li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
@@ -335,6 +347,8 @@
335
347
 
336
348
  <li><a href="../TaskJuggler/ReportServerRecord.html">TaskJuggler::ReportServerRecord</a></li>
337
349
 
350
+ <li><a href="../TaskJuggler/ReportServlet.html">TaskJuggler::ReportServlet</a></li>
351
+
338
352
  <li><a href="../TaskJuggler/ReportTable.html">TaskJuggler::ReportTable</a></li>
339
353
 
340
354
  <li><a href="../TaskJuggler/ReportTableCell.html">TaskJuggler::ReportTableCell</a></li>
@@ -463,6 +477,8 @@
463
477
 
464
478
  <li><a href="../TaskJuggler/TextScanner/FileStreamHandle.html">TaskJuggler::TextScanner::FileStreamHandle</a></li>
465
479
 
480
+ <li><a href="../TaskJuggler/TextScanner/MacroStackEntry.html">TaskJuggler::TextScanner::MacroStackEntry</a></li>
481
+
466
482
  <li><a href="../TaskJuggler/TextScanner/StreamHandle.html">TaskJuggler::TextScanner::StreamHandle</a></li>
467
483
 
468
484
  <li><a href="../TaskJuggler/TimeSheet.html">TaskJuggler::TimeSheet</a></li>
@@ -507,8 +523,12 @@
507
523
 
508
524
  <li><a href="../TaskJuggler/TjpSyntaxRules.html">TaskJuggler::TjpSyntaxRules</a></li>
509
525
 
526
+ <li><a href="../TaskJuggler/URLParameter.html">TaskJuggler::URLParameter</a></li>
527
+
510
528
  <li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
511
529
 
530
+ <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
531
+
512
532
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
513
533
 
514
534
  <li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
@@ -535,6 +555,8 @@
535
555
 
536
556
  <li><a href="../String.html">String</a></li>
537
557
 
558
+ <li><a href="../StringIO.html">StringIO</a></li>
559
+
538
560
  </ul>
539
561
  <div id="no-class-search-results" style="display: none;">No matching classes.</div>
540
562
  </div>
@@ -608,7 +630,7 @@ function call in a <a href="LogicalExpression.html">LogicalExpression</a>.
608
630
 
609
631
 
610
632
  <div id="new-method" class="method-detail ">
611
- <a name="M001649"></a>
633
+ <a name="method-c-new"></a>
612
634
 
613
635
  <div class="method-heading">
614
636
 
@@ -630,20 +652,20 @@ Create a new <a href="LogicalFunction.html">LogicalFunction</a>.
630
652
  <div class="method-source-code"
631
653
  id="new-source">
632
654
  <pre>
633
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 38</span>
634
- 38: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">opnd</span>)
635
- 39: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opnd</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">__</span>
636
- 40: <span class="ruby-comment cmt"># Function names with a trailing _ are like their counterparts without</span>
637
- 41: <span class="ruby-comment cmt"># the _. But during evaluation the property and the scope properties</span>
638
- 42: <span class="ruby-comment cmt"># will be switched.</span>
639
- 43: <span class="ruby-ivar">@name</span> = <span class="ruby-identifier">opnd</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">2</span>]
640
- 44: <span class="ruby-ivar">@invertProperties</span> = <span class="ruby-keyword kw">true</span>
641
- 45: <span class="ruby-keyword kw">else</span>
642
- 46: <span class="ruby-ivar">@name</span> = <span class="ruby-identifier">opnd</span>
643
- 47: <span class="ruby-ivar">@invertProperties</span> = <span class="ruby-keyword kw">false</span>
644
- 48: <span class="ruby-keyword kw">end</span>
645
- 49: <span class="ruby-ivar">@arguments</span> = []
646
- 50: <span class="ruby-keyword kw">end</span></pre>
655
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 39</span>
656
+ 39: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">opnd</span>)
657
+ 40: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opnd</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">__</span>
658
+ 41: <span class="ruby-comment cmt"># Function names with a trailing _ are like their counterparts without</span>
659
+ 42: <span class="ruby-comment cmt"># the _. But during evaluation the property and the scope properties</span>
660
+ 43: <span class="ruby-comment cmt"># will be switched.</span>
661
+ 44: <span class="ruby-ivar">@name</span> = <span class="ruby-identifier">opnd</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">2</span>]
662
+ 45: <span class="ruby-ivar">@invertProperties</span> = <span class="ruby-keyword kw">true</span>
663
+ 46: <span class="ruby-keyword kw">else</span>
664
+ 47: <span class="ruby-ivar">@name</span> = <span class="ruby-identifier">opnd</span>
665
+ 48: <span class="ruby-ivar">@invertProperties</span> = <span class="ruby-keyword kw">false</span>
666
+ 49: <span class="ruby-keyword kw">end</span>
667
+ 50: <span class="ruby-ivar">@arguments</span> = []
668
+ 51: <span class="ruby-keyword kw">end</span></pre>
647
669
  </div>
648
670
 
649
671
  </div>
@@ -661,7 +683,7 @@ Create a new <a href="LogicalFunction.html">LogicalFunction</a>.
661
683
 
662
684
 
663
685
  <div id="eval-method" class="method-detail ">
664
- <a name="M001651"></a>
686
+ <a name="method-i-eval"></a>
665
687
 
666
688
  <div class="method-heading">
667
689
 
@@ -682,12 +704,12 @@ Evaluate the function by calling it with the arguments.
682
704
  <div class="method-source-code"
683
705
  id="eval-source">
684
706
  <pre>
685
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 70</span>
686
- 70: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">eval</span>(<span class="ruby-identifier">expr</span>)
687
- 71: <span class="ruby-identifier">args</span> = []
688
- 72: <span class="ruby-comment cmt"># Call the function and return the result.</span>
689
- 73: <span class="ruby-identifier">send</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">expr</span>, <span class="ruby-ivar">@arguments</span>)
690
- 74: <span class="ruby-keyword kw">end</span></pre>
707
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 71</span>
708
+ 71: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">eval</span>(<span class="ruby-identifier">expr</span>)
709
+ 72: <span class="ruby-identifier">args</span> = []
710
+ 73: <span class="ruby-comment cmt"># Call the function and return the result.</span>
711
+ 74: <span class="ruby-identifier">send</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">expr</span>, <span class="ruby-ivar">@arguments</span>)
712
+ 75: <span class="ruby-keyword kw">end</span></pre>
691
713
  </div>
692
714
 
693
715
  </div>
@@ -699,7 +721,7 @@ Evaluate the function by calling it with the arguments.
699
721
 
700
722
 
701
723
  <div id="set-rguments-nd-heck-method" class="method-detail ">
702
- <a name="M001650"></a>
724
+ <a name="method-i-setArgumentsAndCheck"></a>
703
725
 
704
726
  <div class="method-heading">
705
727
 
@@ -722,20 +744,20 @@ function and the number of arguments match this function. If not, return an
722
744
  <div class="method-source-code"
723
745
  id="set-rguments-nd-heck-source">
724
746
  <pre>
725
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 55</span>
726
- 55: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setArgumentsAndCheck</span>(<span class="ruby-identifier">args</span>)
727
- 56: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">@@functions</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-ivar">@name</span>)
728
- 57: <span class="ruby-keyword kw">return</span> [ <span class="ruby-value str">'unknown_function'</span>,
729
- 58: <span class="ruby-node">&quot;Unknown function #{@name} used in logical expression.&quot;</span> ]
730
- 59: <span class="ruby-keyword kw">end</span>
731
- 60: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">@@functions</span>[<span class="ruby-ivar">@name</span>] <span class="ruby-operator">!=</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span>
732
- 61: <span class="ruby-keyword kw">return</span> [ <span class="ruby-value str">'wrong_no_func_arguments'</span>,
733
- 62: <span class="ruby-node">&quot;Wrong number of arguments for function #{@name}. Got &quot;</span> <span class="ruby-operator">+</span>
734
- 63: <span class="ruby-node">&quot;#{args.length} instead of #{@@functions[@name]}.&quot;</span> ]
735
- 64: <span class="ruby-keyword kw">end</span>
736
- 65: <span class="ruby-ivar">@arguments</span> = <span class="ruby-identifier">args</span>
737
- 66: <span class="ruby-keyword kw">nil</span>
738
- 67: <span class="ruby-keyword kw">end</span></pre>
747
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 56</span>
748
+ 56: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setArgumentsAndCheck</span>(<span class="ruby-identifier">args</span>)
749
+ 57: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">@@functions</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-ivar">@name</span>)
750
+ 58: <span class="ruby-keyword kw">return</span> [ <span class="ruby-value str">'unknown_function'</span>,
751
+ 59: <span class="ruby-node">&quot;Unknown function #{@name} used in logical expression.&quot;</span> ]
752
+ 60: <span class="ruby-keyword kw">end</span>
753
+ 61: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">@@functions</span>[<span class="ruby-ivar">@name</span>] <span class="ruby-operator">!=</span> <span class="ruby-identifier">args</span>.<span class="ruby-identifier">length</span>
754
+ 62: <span class="ruby-keyword kw">return</span> [ <span class="ruby-value str">'wrong_no_func_arguments'</span>,
755
+ 63: <span class="ruby-node">&quot;Wrong number of arguments for function #{@name}. Got &quot;</span> <span class="ruby-operator">+</span>
756
+ 64: <span class="ruby-node">&quot;#{args.length} instead of #{@@functions[@name]}.&quot;</span> ]
757
+ 65: <span class="ruby-keyword kw">end</span>
758
+ 66: <span class="ruby-ivar">@arguments</span> = <span class="ruby-identifier">args</span>
759
+ 67: <span class="ruby-keyword kw">nil</span>
760
+ 68: <span class="ruby-keyword kw">end</span></pre>
739
761
  </div>
740
762
 
741
763
  </div>
@@ -747,7 +769,7 @@ function and the number of arguments match this function. If not, return an
747
769
 
748
770
 
749
771
  <div id="to-s-method" class="method-detail ">
750
- <a name="M001652"></a>
772
+ <a name="method-i-to_s"></a>
751
773
 
752
774
  <div class="method-heading">
753
775
 
@@ -768,10 +790,10 @@ Return a textual expression of the function call.
768
790
  <div class="method-source-code"
769
791
  id="to-s-source">
770
792
  <pre>
771
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 77</span>
772
- 77: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
773
- 78: <span class="ruby-node">&quot;#{@name}(#{@arguments.join(', ')})&quot;</span>
774
- 79: <span class="ruby-keyword kw">end</span></pre>
793
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 78</span>
794
+ 78: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
795
+ 79: <span class="ruby-node">&quot;#{@name}(#{@arguments.join(', ')})&quot;</span>
796
+ 80: <span class="ruby-keyword kw">end</span></pre>
775
797
  </div>
776
798
 
777
799
  </div>
@@ -789,7 +811,7 @@ Return a textual expression of the function call.
789
811
 
790
812
 
791
813
  <div id="hasalert-method" class="method-detail ">
792
- <a name="M001654"></a>
814
+ <a name="method-i-hasalert"></a>
793
815
 
794
816
  <div class="method-heading">
795
817
 
@@ -808,15 +830,15 @@ Return a textual expression of the function call.
808
830
  <div class="method-source-code"
809
831
  id="hasalert-source">
810
832
  <pre>
811
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 93</span>
812
- 93: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">hasalert</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
813
- 94: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
814
- 95: <span class="ruby-identifier">query</span> = <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>
815
- 96: <span class="ruby-identifier">project</span> = <span class="ruby-identifier">property</span>.<span class="ruby-identifier">project</span>
816
- 97: <span class="ruby-identifier">date</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">reportContext</span>.<span class="ruby-identifier">report</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value str">'end'</span>)
817
- 98: <span class="ruby-operator">!</span><span class="ruby-identifier">project</span>[<span class="ruby-value str">'journal'</span>].<span class="ruby-identifier">currentEntries</span>(<span class="ruby-identifier">query</span>.<span class="ruby-identifier">end</span>, <span class="ruby-identifier">property</span>,
818
- 99: <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>], <span class="ruby-identifier">query</span>.<span class="ruby-identifier">start</span>).<span class="ruby-identifier">empty?</span>
819
- 100: <span class="ruby-keyword kw">end</span></pre>
833
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 94</span>
834
+ 94: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">hasalert</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
835
+ 95: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
836
+ 96: <span class="ruby-identifier">query</span> = <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>
837
+ 97: <span class="ruby-identifier">project</span> = <span class="ruby-identifier">property</span>.<span class="ruby-identifier">project</span>
838
+ 98: <span class="ruby-identifier">date</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">reportContexts</span>.<span class="ruby-identifier">last</span>.<span class="ruby-identifier">report</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value str">'end'</span>)
839
+ 99: <span class="ruby-operator">!</span><span class="ruby-identifier">project</span>[<span class="ruby-value str">'journal'</span>].<span class="ruby-identifier">currentEntries</span>(<span class="ruby-identifier">query</span>.<span class="ruby-identifier">end</span>, <span class="ruby-identifier">property</span>,
840
+ 100: <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>], <span class="ruby-identifier">query</span>.<span class="ruby-identifier">start</span>).<span class="ruby-identifier">empty?</span>
841
+ 101: <span class="ruby-keyword kw">end</span></pre>
820
842
  </div>
821
843
 
822
844
  </div>
@@ -828,7 +850,7 @@ Return a textual expression of the function call.
828
850
 
829
851
 
830
852
  <div id="isactive-method" class="method-detail ">
831
- <a name="M001655"></a>
853
+ <a name="method-i-isactive"></a>
832
854
 
833
855
  <div class="method-heading">
834
856
 
@@ -847,21 +869,20 @@ Return a textual expression of the function call.
847
869
  <div class="method-source-code"
848
870
  id="isactive-source">
849
871
  <pre>
850
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 102</span>
851
- 102: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isactive</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
852
- 103: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
853
- 104: <span class="ruby-comment cmt"># The result can only be true when called for a Task property.</span>
854
- 105: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">property</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Task</span>) <span class="ruby-operator">||</span>
855
- 106: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Resource</span>)
856
- 107: <span class="ruby-identifier">project</span> = <span class="ruby-identifier">property</span>.<span class="ruby-identifier">project</span>
857
- 108: <span class="ruby-comment cmt"># 1st arg must be a scenario index.</span>
858
- 109: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">scenarioIdx</span>(<span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>])).<span class="ruby-identifier">nil?</span>
859
- 110: <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">error</span>(<span class="ruby-node">&quot;Unknown scenario '#{args[0]}' used for function isactive()&quot;</span>)
860
- 111: <span class="ruby-keyword kw">end</span>
861
- 112:
862
- 113: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">getAllocatedTime</span>(<span class="ruby-identifier">scenarioIdx</span>,
863
- 114: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">reportContext</span>.<span class="ruby-identifier">report</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value str">'start'</span>),
864
- 115: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">reportContext</span>.<span class="ruby-identifier">report</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value str">'end'</span>),
872
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 103</span>
873
+ 103: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isactive</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
874
+ 104: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
875
+ 105: <span class="ruby-comment cmt"># The result can only be true when called for a Task property.</span>
876
+ 106: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">property</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Task</span>) <span class="ruby-operator">||</span>
877
+ 107: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Resource</span>)
878
+ 108: <span class="ruby-identifier">project</span> = <span class="ruby-identifier">property</span>.<span class="ruby-identifier">project</span>
879
+ 109: <span class="ruby-comment cmt"># 1st arg must be a scenario index.</span>
880
+ 110: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">scenarioIdx</span>(<span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>])).<span class="ruby-identifier">nil?</span>
881
+ 111: <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">error</span>(<span class="ruby-node">&quot;Unknown scenario '#{args[0]}' used for function isactive()&quot;</span>)
882
+ 112: <span class="ruby-keyword kw">end</span>
883
+ 113:
884
+ 114: <span class="ruby-identifier">query</span> = <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>
885
+ 115: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">getAllocatedTime</span>(<span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">query</span>.<span class="ruby-identifier">start</span>, <span class="ruby-identifier">query</span>.<span class="ruby-identifier">end</span>,
865
886
  116: <span class="ruby-identifier">scopeProperty</span>) <span class="ruby-operator">&gt;</span> <span class="ruby-value">0.0</span>
866
887
  117: <span class="ruby-keyword kw">end</span></pre>
867
888
  </div>
@@ -875,7 +896,7 @@ Return a textual expression of the function call.
875
896
 
876
897
 
877
898
  <div id="isdependencyof-method" class="method-detail ">
878
- <a name="M001656"></a>
899
+ <a name="method-i-isdependencyof"></a>
879
900
 
880
901
  <div class="method-heading">
881
902
 
@@ -920,7 +941,7 @@ Return a textual expression of the function call.
920
941
 
921
942
 
922
943
  <div id="isdutyof-method" class="method-detail ">
923
- <a name="M001657"></a>
944
+ <a name="method-i-isdutyof"></a>
924
945
 
925
946
  <div class="method-heading">
926
947
 
@@ -959,11 +980,54 @@ Return a textual expression of the function call.
959
980
 
960
981
 
961
982
 
983
+ </div>
984
+
985
+
986
+ <div id="isfeatureof-method" class="method-detail ">
987
+ <a name="method-i-isfeatureof"></a>
988
+
989
+ <div class="method-heading">
990
+
991
+ <span class="method-name">isfeatureof</span><span
992
+ class="method-args">(expr, args)</span>
993
+ <span class="method-click-advice">click to toggle source</span>
994
+
995
+ </div>
996
+
997
+ <div class="method-description">
998
+
999
+
1000
+
1001
+
1002
+
1003
+ <div class="method-source-code"
1004
+ id="isfeatureof-source">
1005
+ <pre>
1006
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 147</span>
1007
+ 147: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isfeatureof</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
1008
+ 148: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1009
+ 149: <span class="ruby-comment cmt"># The result can only be true when called for a Task property.</span>
1010
+ 150: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">property</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Task</span>)
1011
+ 151: <span class="ruby-identifier">project</span> = <span class="ruby-identifier">property</span>.<span class="ruby-identifier">project</span>
1012
+ 152: <span class="ruby-comment cmt"># 1st arg must be a task ID.</span>
1013
+ 153: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">task</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">task</span>(<span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>])).<span class="ruby-identifier">nil?</span>
1014
+ 154: <span class="ruby-comment cmt"># 2nd arg must be a scenario index.</span>
1015
+ 155: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">scenarioIdx</span>(<span class="ruby-identifier">args</span>[<span class="ruby-value">1</span>])).<span class="ruby-identifier">nil?</span>
1016
+ 156:
1017
+ 157: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">isFeatureOf</span>(<span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">task</span>)
1018
+ 158: <span class="ruby-keyword kw">end</span></pre>
1019
+ </div>
1020
+
1021
+ </div>
1022
+
1023
+
1024
+
1025
+
962
1026
  </div>
963
1027
 
964
1028
 
965
1029
  <div id="isleaf-method" class="method-detail ">
966
- <a name="M001658"></a>
1030
+ <a name="method-i-isleaf"></a>
967
1031
 
968
1032
  <div class="method-heading">
969
1033
 
@@ -982,12 +1046,12 @@ Return a textual expression of the function call.
982
1046
  <div class="method-source-code"
983
1047
  id="isleaf-source">
984
1048
  <pre>
985
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 147</span>
986
- 147: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isleaf</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
987
- 148: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
988
- 149: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">property</span>
989
- 150: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">leaf?</span>
990
- 151: <span class="ruby-keyword kw">end</span></pre>
1049
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 160</span>
1050
+ 160: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isleaf</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
1051
+ 161: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1052
+ 162: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">property</span>
1053
+ 163: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">leaf?</span>
1054
+ 164: <span class="ruby-keyword kw">end</span></pre>
991
1055
  </div>
992
1056
 
993
1057
  </div>
@@ -999,7 +1063,7 @@ Return a textual expression of the function call.
999
1063
 
1000
1064
 
1001
1065
  <div id="isongoing-method" class="method-detail ">
1002
- <a name="M001659"></a>
1066
+ <a name="method-i-isongoing"></a>
1003
1067
 
1004
1068
  <div class="method-heading">
1005
1069
 
@@ -1018,27 +1082,27 @@ Return a textual expression of the function call.
1018
1082
  <div class="method-source-code"
1019
1083
  id="isongoing-source">
1020
1084
  <pre>
1021
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 153</span>
1022
- 153: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isongoing</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
1023
- 154: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1024
- 155: <span class="ruby-comment cmt"># The result can only be true when called for a Task property.</span>
1025
- 156: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">task</span> = <span class="ruby-identifier">property</span>).<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Task</span>)
1026
- 157: <span class="ruby-identifier">project</span> = <span class="ruby-identifier">task</span>.<span class="ruby-identifier">project</span>
1027
- 158: <span class="ruby-comment cmt"># 1st arg must be a scenario index.</span>
1028
- 159: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">scenarioIdx</span>(<span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>])).<span class="ruby-identifier">nil?</span>
1029
- 160: <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">error</span>(<span class="ruby-node">&quot;Unknown scenario '#{args[0]}' used for function isongoing()&quot;</span>)
1030
- 161: <span class="ruby-keyword kw">end</span>
1031
- 162:
1032
- 163: <span class="ruby-identifier">iv1</span> = <span class="ruby-constant">Interval</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">project</span>.<span class="ruby-identifier">reportContext</span>.<span class="ruby-identifier">report</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value str">'start'</span>),
1033
- 164: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">reportContext</span>.<span class="ruby-identifier">report</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value str">'end'</span>))
1034
- 165: <span class="ruby-identifier">tStart</span> = <span class="ruby-identifier">task</span>[<span class="ruby-value str">'start'</span>, <span class="ruby-identifier">scenarioIdx</span>]
1035
- 166: <span class="ruby-identifier">tEnd</span> = <span class="ruby-identifier">task</span>[<span class="ruby-value str">'end'</span>, <span class="ruby-identifier">scenarioIdx</span>]
1036
- 167: <span class="ruby-comment cmt"># This helps to show tasks with scheduling errors.</span>
1037
- 168: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">tStart</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">tEnd</span>
1038
- 169: <span class="ruby-identifier">iv2</span> = <span class="ruby-constant">Interval</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">tStart</span>, <span class="ruby-identifier">tEnd</span>)
1039
- 170:
1040
- 171: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">iv1</span>.<span class="ruby-identifier">overlaps?</span>(<span class="ruby-identifier">iv2</span>)
1041
- 172: <span class="ruby-keyword kw">end</span></pre>
1085
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 166</span>
1086
+ 166: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isongoing</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
1087
+ 167: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1088
+ 168: <span class="ruby-comment cmt"># The result can only be true when called for a Task property.</span>
1089
+ 169: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">task</span> = <span class="ruby-identifier">property</span>).<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Task</span>)
1090
+ 170: <span class="ruby-identifier">project</span> = <span class="ruby-identifier">task</span>.<span class="ruby-identifier">project</span>
1091
+ 171: <span class="ruby-comment cmt"># 1st arg must be a scenario index.</span>
1092
+ 172: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">scenarioIdx</span>(<span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>])).<span class="ruby-identifier">nil?</span>
1093
+ 173: <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">error</span>(<span class="ruby-node">&quot;Unknown scenario '#{args[0]}' used for function isongoing()&quot;</span>)
1094
+ 174: <span class="ruby-keyword kw">end</span>
1095
+ 175:
1096
+ 176: <span class="ruby-identifier">query</span> = <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>
1097
+ 177: <span class="ruby-identifier">iv1</span> = <span class="ruby-constant">Interval</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">query</span>.<span class="ruby-identifier">start</span>, <span class="ruby-identifier">query</span>.<span class="ruby-identifier">end</span>)
1098
+ 178: <span class="ruby-identifier">tStart</span> = <span class="ruby-identifier">task</span>[<span class="ruby-value str">'start'</span>, <span class="ruby-identifier">scenarioIdx</span>]
1099
+ 179: <span class="ruby-identifier">tEnd</span> = <span class="ruby-identifier">task</span>[<span class="ruby-value str">'end'</span>, <span class="ruby-identifier">scenarioIdx</span>]
1100
+ 180: <span class="ruby-comment cmt"># This helps to show tasks with scheduling errors.</span>
1101
+ 181: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">tStart</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">tEnd</span>
1102
+ 182: <span class="ruby-identifier">iv2</span> = <span class="ruby-constant">Interval</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">tStart</span>, <span class="ruby-identifier">tEnd</span>)
1103
+ 183:
1104
+ 184: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">iv1</span>.<span class="ruby-identifier">overlaps?</span>(<span class="ruby-identifier">iv2</span>)
1105
+ 185: <span class="ruby-keyword kw">end</span></pre>
1042
1106
  </div>
1043
1107
 
1044
1108
  </div>
@@ -1050,7 +1114,7 @@ Return a textual expression of the function call.
1050
1114
 
1051
1115
 
1052
1116
  <div id="isresource-method" class="method-detail ">
1053
- <a name="M001660"></a>
1117
+ <a name="method-i-isresource"></a>
1054
1118
 
1055
1119
  <div class="method-heading">
1056
1120
 
@@ -1069,11 +1133,11 @@ Return a textual expression of the function call.
1069
1133
  <div class="method-source-code"
1070
1134
  id="isresource-source">
1071
1135
  <pre>
1072
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 174</span>
1073
- 174: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isresource</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
1074
- 175: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1075
- 176: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Resource</span>)
1076
- 177: <span class="ruby-keyword kw">end</span></pre>
1136
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 187</span>
1137
+ 187: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">isresource</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
1138
+ 188: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1139
+ 189: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Resource</span>)
1140
+ 190: <span class="ruby-keyword kw">end</span></pre>
1077
1141
  </div>
1078
1142
 
1079
1143
  </div>
@@ -1085,7 +1149,7 @@ Return a textual expression of the function call.
1085
1149
 
1086
1150
 
1087
1151
  <div id="istask-method" class="method-detail ">
1088
- <a name="M001661"></a>
1152
+ <a name="method-i-istask"></a>
1089
1153
 
1090
1154
  <div class="method-heading">
1091
1155
 
@@ -1104,11 +1168,11 @@ Return a textual expression of the function call.
1104
1168
  <div class="method-source-code"
1105
1169
  id="istask-source">
1106
1170
  <pre>
1107
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 179</span>
1108
- 179: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">istask</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
1109
- 180: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1110
- 181: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Task</span>)
1111
- 182: <span class="ruby-keyword kw">end</span></pre>
1171
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 192</span>
1172
+ 192: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">istask</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
1173
+ 193: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1174
+ 194: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Task</span>)
1175
+ 195: <span class="ruby-keyword kw">end</span></pre>
1112
1176
  </div>
1113
1177
 
1114
1178
  </div>
@@ -1120,7 +1184,7 @@ Return a textual expression of the function call.
1120
1184
 
1121
1185
 
1122
1186
  <div id="properties-method" class="method-detail ">
1123
- <a name="M001653"></a>
1187
+ <a name="method-i-properties"></a>
1124
1188
 
1125
1189
  <div class="method-heading">
1126
1190
 
@@ -1142,14 +1206,14 @@ Return the property and scope property as determined by the
1142
1206
  <div class="method-source-code"
1143
1207
  id="properties-source">
1144
1208
  <pre>
1145
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 85</span>
1146
- 85: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1147
- 86: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@invertProperties</span>
1148
- 87: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>.<span class="ruby-identifier">scopeProperty</span>, <span class="ruby-keyword kw">nil</span>
1149
- 88: <span class="ruby-keyword kw">else</span>
1150
- 89: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>.<span class="ruby-identifier">property</span>, <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>.<span class="ruby-identifier">scopeProperty</span>
1151
- 90: <span class="ruby-keyword kw">end</span>
1152
- 91: <span class="ruby-keyword kw">end</span></pre>
1209
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 86</span>
1210
+ 86: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1211
+ 87: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@invertProperties</span>
1212
+ 88: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>.<span class="ruby-identifier">scopeProperty</span>, <span class="ruby-keyword kw">nil</span>
1213
+ 89: <span class="ruby-keyword kw">else</span>
1214
+ 90: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>.<span class="ruby-identifier">property</span>, <span class="ruby-identifier">expr</span>.<span class="ruby-identifier">query</span>.<span class="ruby-identifier">scopeProperty</span>
1215
+ 91: <span class="ruby-keyword kw">end</span>
1216
+ 92: <span class="ruby-keyword kw">end</span></pre>
1153
1217
  </div>
1154
1218
 
1155
1219
  </div>
@@ -1161,7 +1225,7 @@ Return the property and scope property as determined by the
1161
1225
 
1162
1226
 
1163
1227
  <div id="treelevel-method" class="method-detail ">
1164
- <a name="M001662"></a>
1228
+ <a name="method-i-treelevel"></a>
1165
1229
 
1166
1230
  <div class="method-heading">
1167
1231
 
@@ -1180,11 +1244,11 @@ Return the property and scope property as determined by the
1180
1244
  <div class="method-source-code"
1181
1245
  id="treelevel-source">
1182
1246
  <pre>
1183
- <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 184</span>
1184
- 184: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">treelevel</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
1185
- 185: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1186
- 186: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">level</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
1187
- 187: <span class="ruby-keyword kw">end</span></pre>
1247
+ <span class="ruby-comment cmt"># File lib/LogicalFunction.rb, line 197</span>
1248
+ 197: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">treelevel</span>(<span class="ruby-identifier">expr</span>, <span class="ruby-identifier">args</span>)
1249
+ 198: <span class="ruby-identifier">property</span>, <span class="ruby-identifier">scopeProperty</span> = <span class="ruby-identifier">properties</span>(<span class="ruby-identifier">expr</span>)
1250
+ 199: <span class="ruby-identifier">property</span>.<span class="ruby-identifier">level</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
1251
+ 200: <span class="ruby-keyword kw">end</span></pre>
1188
1252
  </div>
1189
1253
 
1190
1254
  </div>