taskjuggler 0.0.10 → 0.0.11

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 (787) hide show
  1. data/CHANGELOG +115 -0
  2. data/README.rdoc +105 -0
  3. data/examples/tutorial.tjp +21 -16
  4. data/gem_spec.rb +1 -1
  5. data/lib/{Account.rb → taskjuggler/Account.rb} +2 -3
  6. data/lib/{AccountScenario.rb → taskjuggler/AccountScenario.rb} +1 -1
  7. data/lib/taskjuggler/AlgorithmDiff.rb +311 -0
  8. data/lib/{Allocation.rb → taskjuggler/Allocation.rb} +3 -3
  9. data/lib/{AppConfig.rb → taskjuggler/AppConfig.rb} +0 -1
  10. data/lib/{AttributeBase.rb → taskjuggler/AttributeBase.rb} +1 -1
  11. data/lib/{AttributeDefinition.rb → taskjuggler/AttributeDefinition.rb} +0 -0
  12. data/lib/{Attributes.rb → taskjuggler/Attributes.rb} +19 -9
  13. data/lib/{BatchProcessor.rb → taskjuggler/BatchProcessor.rb} +0 -0
  14. data/lib/{Booking.rb → taskjuggler/Booking.rb} +0 -0
  15. data/lib/{Charge.rb → taskjuggler/Charge.rb} +1 -1
  16. data/lib/{ChargeSet.rb → taskjuggler/ChargeSet.rb} +1 -1
  17. data/lib/{DataCache.rb → taskjuggler/DataCache.rb} +0 -0
  18. data/lib/{FileList.rb → taskjuggler/FileList.rb} +0 -0
  19. data/lib/{HTMLDocument.rb → taskjuggler/HTMLDocument.rb} +1 -1
  20. data/lib/{Interval.rb → taskjuggler/Interval.rb} +1 -1
  21. data/lib/{IntervalList.rb → taskjuggler/IntervalList.rb} +1 -1
  22. data/lib/{Journal.rb → taskjuggler/Journal.rb} +2 -2
  23. data/lib/{KeywordArray.rb → taskjuggler/KeywordArray.rb} +0 -0
  24. data/lib/{KeywordDocumentation.rb → taskjuggler/KeywordDocumentation.rb} +5 -5
  25. data/lib/{Limits.rb → taskjuggler/Limits.rb} +1 -1
  26. data/lib/{Log.rb → taskjuggler/Log.rb} +0 -0
  27. data/lib/{LogFile.rb → taskjuggler/LogFile.rb} +0 -0
  28. data/lib/{LogicalExpression.rb → taskjuggler/LogicalExpression.rb} +3 -3
  29. data/lib/{LogicalFunction.rb → taskjuggler/LogicalFunction.rb} +1 -1
  30. data/lib/{LogicalOperation.rb → taskjuggler/LogicalOperation.rb} +1 -1
  31. data/lib/{MessageHandler.rb → taskjuggler/MessageHandler.rb} +3 -1
  32. data/lib/{Project.rb → taskjuggler/Project.rb} +51 -48
  33. data/lib/{ProjectFileParser.rb → taskjuggler/ProjectFileParser.rb} +25 -9
  34. data/lib/{ProjectFileScanner.rb → taskjuggler/ProjectFileScanner.rb} +5 -5
  35. data/lib/{PropertyList.rb → taskjuggler/PropertyList.rb} +0 -0
  36. data/lib/{PropertySet.rb → taskjuggler/PropertySet.rb} +3 -4
  37. data/lib/{PropertyTreeNode.rb → taskjuggler/PropertyTreeNode.rb} +157 -11
  38. data/lib/{Query.rb → taskjuggler/Query.rb} +17 -7
  39. data/lib/{RealFormat.rb → taskjuggler/RealFormat.rb} +0 -0
  40. data/lib/{Resource.rb → taskjuggler/Resource.rb} +8 -6
  41. data/lib/{ResourceScenario.rb → taskjuggler/ResourceScenario.rb} +26 -65
  42. data/lib/{RichText.rb → taskjuggler/RichText.rb} +3 -3
  43. data/lib/{RichTextDocument.rb → taskjuggler/RichText/Document.rb} +3 -3
  44. data/lib/{RichTextElement.rb → taskjuggler/RichText/Element.rb} +10 -4
  45. data/lib/{RichTextFunctionExample.rb → taskjuggler/RichText/FunctionExample.rb} +3 -3
  46. data/lib/{RichTextFunctionHandler.rb → taskjuggler/RichText/FunctionHandler.rb} +0 -0
  47. data/lib/{RichTextParser.rb → taskjuggler/RichText/Parser.rb} +6 -4
  48. data/lib/{RTFHandlers.rb → taskjuggler/RichText/RTFHandlers.rb} +4 -4
  49. data/lib/{RTFNavigator.rb → taskjuggler/RichText/RTFNavigator.rb} +3 -3
  50. data/lib/{RTFQuery.rb → taskjuggler/RichText/RTFQuery.rb} +62 -39
  51. data/lib/{RTFReport.rb → taskjuggler/RichText/RTFReport.rb} +2 -2
  52. data/lib/{RTFReportLink.rb → taskjuggler/RichText/RTFReportLink.rb} +4 -4
  53. data/lib/{RTFWithQuerySupport.rb → taskjuggler/RichText/RTFWithQuerySupport.rb} +1 -1
  54. data/lib/{RichTextScanner.rb → taskjuggler/RichText/Scanner.rb} +18 -5
  55. data/lib/{RichTextSnip.rb → taskjuggler/RichText/Snip.rb} +2 -2
  56. data/lib/{RichTextSyntaxRules.rb → taskjuggler/RichText/SyntaxRules.rb} +14 -0
  57. data/lib/{TOCEntry.rb → taskjuggler/RichText/TOCEntry.rb} +2 -2
  58. data/lib/{TableOfContents.rb → taskjuggler/RichText/TableOfContents.rb} +2 -2
  59. data/lib/{RuntimeConfig.rb → taskjuggler/RuntimeConfig.rb} +18 -18
  60. data/lib/{Scenario.rb → taskjuggler/Scenario.rb} +1 -1
  61. data/lib/{ScenarioData.rb → taskjuggler/ScenarioData.rb} +2 -3
  62. data/lib/{Scoreboard.rb → taskjuggler/Scoreboard.rb} +4 -4
  63. data/lib/{SheetHandlerBase.rb → taskjuggler/SheetHandlerBase.rb} +3 -3
  64. data/lib/{SheetReceiver.rb → taskjuggler/SheetReceiver.rb} +2 -2
  65. data/lib/{SheetSender.rb → taskjuggler/SheetSender.rb} +5 -5
  66. data/lib/{Shift.rb → taskjuggler/Shift.rb} +2 -3
  67. data/lib/{ShiftAssignments.rb → taskjuggler/ShiftAssignments.rb} +1 -1
  68. data/lib/{ShiftScenario.rb → taskjuggler/ShiftScenario.rb} +1 -1
  69. data/lib/{SimpleQueryExpander.rb → taskjuggler/SimpleQueryExpander.rb} +0 -0
  70. data/lib/{StatusSheetReceiver.rb → taskjuggler/StatusSheetReceiver.rb} +1 -1
  71. data/lib/{StatusSheetSender.rb → taskjuggler/StatusSheetSender.rb} +1 -1
  72. data/lib/{SyntaxReference.rb → taskjuggler/SyntaxReference.rb} +4 -4
  73. data/lib/{TableColumnDefinition.rb → taskjuggler/TableColumnDefinition.rb} +0 -0
  74. data/lib/{Task.rb → taskjuggler/Task.rb} +2 -2
  75. data/lib/{TaskDependency.rb → taskjuggler/TaskDependency.rb} +8 -0
  76. data/lib/{TaskJuggler.rb → taskjuggler/TaskJuggler.rb} +6 -4
  77. data/lib/{TaskScenario.rb → taskjuggler/TaskScenario.rb} +211 -150
  78. data/lib/taskjuggler/TernarySearchTree.rb +203 -0
  79. data/lib/{TextFormatter.rb → taskjuggler/TextFormatter.rb} +1 -1
  80. data/lib/{TextParser.rb → taskjuggler/TextParser.rb} +6 -6
  81. data/lib/{MacroTable.rb → taskjuggler/TextParser/MacroTable.rb} +2 -12
  82. data/lib/{TextParser → taskjuggler/TextParser}/Pattern.rb +5 -2
  83. data/lib/{TextParser → taskjuggler/TextParser}/Rule.rb +1 -1
  84. data/lib/{TextScanner.rb → taskjuggler/TextParser/Scanner.rb} +34 -32
  85. data/lib/{SourceFileInfo.rb → taskjuggler/TextParser/SourceFileInfo.rb} +1 -1
  86. data/lib/{TextParser → taskjuggler/TextParser}/StackElement.rb +0 -2
  87. data/lib/{TextParser → taskjuggler/TextParser}/State.rb +0 -0
  88. data/lib/{TextParser → taskjuggler/TextParser}/TokenDoc.rb +0 -0
  89. data/lib/{TimeSheetReceiver.rb → taskjuggler/TimeSheetReceiver.rb} +1 -1
  90. data/lib/{TimeSheetSender.rb → taskjuggler/TimeSheetSender.rb} +1 -1
  91. data/lib/{TimeSheetSummary.rb → taskjuggler/TimeSheetSummary.rb} +1 -1
  92. data/lib/{TimeSheets.rb → taskjuggler/TimeSheets.rb} +23 -16
  93. data/lib/{Tj3AppBase.rb → taskjuggler/Tj3AppBase.rb} +19 -12
  94. data/lib/{Tj3Config.rb → taskjuggler/Tj3Config.rb} +3 -3
  95. data/lib/taskjuggler/Tj3Man.rb +78 -0
  96. data/lib/{Tj3SheetAppBase.rb → taskjuggler/Tj3SheetAppBase.rb} +2 -2
  97. data/lib/{TjException.rb → taskjuggler/TjException.rb} +0 -0
  98. data/lib/{TjTime.rb → taskjuggler/TjTime.rb} +279 -234
  99. data/lib/{TjpExample.rb → taskjuggler/TjpExample.rb} +0 -0
  100. data/lib/{TjpSyntaxRules.rb → taskjuggler/TjpSyntaxRules.rb} +253 -95
  101. data/lib/{URLParameter.rb → taskjuggler/URLParameter.rb} +0 -0
  102. data/lib/{UTF8String.rb → taskjuggler/UTF8String.rb} +0 -0
  103. data/lib/{UserManual.rb → taskjuggler/UserManual.rb} +6 -6
  104. data/lib/{VimSyntax.rb → taskjuggler/VimSyntax.rb} +6 -2
  105. data/lib/{WorkingHours.rb → taskjuggler/WorkingHours.rb} +14 -22
  106. data/lib/{XMLDocument.rb → taskjuggler/XMLDocument.rb} +1 -1
  107. data/lib/{XMLElement.rb → taskjuggler/XMLElement.rb} +1 -1
  108. data/lib/taskjuggler/apps/Tj3.rb +134 -0
  109. data/lib/taskjuggler/apps/Tj3Client.rb +467 -0
  110. data/lib/taskjuggler/apps/Tj3Daemon.rb +142 -0
  111. data/lib/taskjuggler/apps/Tj3SsReceiver.rb +56 -0
  112. data/lib/taskjuggler/apps/Tj3SsSender.rb +90 -0
  113. data/lib/taskjuggler/apps/Tj3TsReceiver.rb +59 -0
  114. data/lib/taskjuggler/apps/Tj3TsSender.rb +77 -0
  115. data/lib/taskjuggler/apps/Tj3TsSummary.rb +86 -0
  116. data/lib/{daemon → taskjuggler/daemon}/Daemon.rb +4 -3
  117. data/lib/{daemon → taskjuggler/daemon}/ProcessIntercom.rb +2 -2
  118. data/lib/{daemon → taskjuggler/daemon}/ProjectBroker.rb +5 -5
  119. data/lib/{daemon → taskjuggler/daemon}/ProjectServer.rb +16 -16
  120. data/lib/{daemon → taskjuggler/daemon}/ReportServer.rb +6 -6
  121. data/lib/{daemon → taskjuggler/daemon}/ReportServlet.rb +2 -2
  122. data/lib/{daemon → taskjuggler/daemon}/WebServer.rb +4 -4
  123. data/lib/{daemon → taskjuggler/daemon}/WelcomePage.rb +2 -1
  124. data/lib/{deep_copy.rb → taskjuggler/deep_copy.rb} +0 -0
  125. data/lib/{reports → taskjuggler/reports}/CSVFile.rb +2 -2
  126. data/lib/{reports → taskjuggler/reports}/CollisionDetector.rb +1 -1
  127. data/lib/{reports → taskjuggler/reports}/ColumnTable.rb +1 -1
  128. data/lib/{reports → taskjuggler/reports}/GanttChart.rb +4 -4
  129. data/lib/{reports → taskjuggler/reports}/GanttContainer.rb +1 -1
  130. data/lib/{reports → taskjuggler/reports}/GanttHeader.rb +1 -1
  131. data/lib/{reports → taskjuggler/reports}/GanttHeaderScaleItem.rb +0 -0
  132. data/lib/{reports → taskjuggler/reports}/GanttLine.rb +6 -6
  133. data/lib/{reports → taskjuggler/reports}/GanttLoadStack.rb +1 -1
  134. data/lib/{reports → taskjuggler/reports}/GanttMilestone.rb +1 -1
  135. data/lib/{reports → taskjuggler/reports}/GanttRouter.rb +1 -1
  136. data/lib/{reports → taskjuggler/reports}/GanttTaskBar.rb +1 -1
  137. data/lib/{reports → taskjuggler/reports}/HTMLGraphics.rb +0 -0
  138. data/lib/{reports → taskjuggler/reports}/Navigator.rb +1 -1
  139. data/lib/{reports → taskjuggler/reports}/NikuReport.rb +3 -6
  140. data/lib/{reports → taskjuggler/reports}/Report.rb +19 -14
  141. data/lib/{reports → taskjuggler/reports}/ReportBase.rb +0 -0
  142. data/lib/{reports → taskjuggler/reports}/ReportContext.rb +0 -0
  143. data/lib/{reports → taskjuggler/reports}/ReportTable.rb +2 -2
  144. data/lib/{reports → taskjuggler/reports}/ReportTableCell.rb +0 -0
  145. data/lib/{reports → taskjuggler/reports}/ReportTableColumn.rb +0 -0
  146. data/lib/{reports → taskjuggler/reports}/ReportTableLegend.rb +0 -0
  147. data/lib/{reports → taskjuggler/reports}/ReportTableLine.rb +1 -1
  148. data/lib/{reports → taskjuggler/reports}/ResourceListRE.rb +4 -4
  149. data/lib/{reports → taskjuggler/reports}/StatusSheetReport.rb +1 -1
  150. data/lib/{reports → taskjuggler/reports}/TableReport.rb +8 -7
  151. data/lib/{reports → taskjuggler/reports}/TaskListRE.rb +4 -4
  152. data/lib/{reports → taskjuggler/reports}/TextReport.rb +1 -1
  153. data/lib/{reports → taskjuggler/reports}/TimeSheetReport.rb +1 -1
  154. data/lib/{reports → taskjuggler/reports}/TjpExportRE.rb +87 -29
  155. data/lib/tj3.rb +2 -144
  156. data/lib/tj3client.rb +2 -442
  157. data/lib/tj3d.rb +1 -133
  158. data/lib/tj3man.rb +2 -75
  159. data/lib/tj3ss_receiver.rb +2 -42
  160. data/lib/tj3ss_sender.rb +1 -76
  161. data/lib/tj3ts_receiver.rb +1 -45
  162. data/lib/tj3ts_sender.rb +1 -63
  163. data/lib/tj3ts_summary.rb +1 -72
  164. data/manual/How_To_Contribute +19 -49
  165. data/manual/Installation +65 -6
  166. data/manual/Reporting_Bugs +6 -20
  167. data/manual/TaskJuggler_Internals +8 -1
  168. data/manual/Tutorial +16 -0
  169. data/prj_cfg.rb +2 -3
  170. data/spec/IntervalList_spec.rb +2 -1
  171. data/spec/ProjectBroker_spec.rb +1 -1
  172. data/spec/TernarySearchTree_spec.rb +131 -0
  173. data/spec/TimeSheets_spec.rb +129 -0
  174. data/spec/Tj3Daemon_spec.rb +51 -0
  175. data/spec/Tj3_spec.rb +36 -0
  176. data/spec/support/DaemonControl.rb +78 -0
  177. data/spec/support/StdIoWrapper.rb +43 -0
  178. data/spec/tj3client.log +23 -0
  179. data/tasks/changelog.rake +17 -2
  180. data/tasks/csts.rake +2 -2
  181. data/tasks/manual.rake +9 -5
  182. data/tasks/missing.rake +0 -4
  183. data/tasks/rdoc.rake +2 -2
  184. data/tasks/vim.rake +9 -0
  185. data/test/TestSuite/CSV-Reports/alert.tjp +9 -0
  186. data/test/TestSuite/CSV-Reports/celltext.tjp +1 -0
  187. data/test/TestSuite/CSV-Reports/inputs.tjp +19 -0
  188. data/test/TestSuite/CSV-Reports/project-1.tji +9 -0
  189. data/test/TestSuite/CSV-Reports/refs/alert.csv +15 -0
  190. data/test/TestSuite/CSV-Reports/refs/celltext.csv +1 -0
  191. data/test/TestSuite/CSV-Reports/refs/inputs.csv +6 -0
  192. data/test/TestSuite/CSV-Reports/refs/resourcereport.csv +4 -4
  193. data/test/TestSuite/CSV-Reports/refs/resourcereport_with_tasks.csv +22 -22
  194. data/test/TestSuite/CSV-Reports/refs/sortByTree.csv +1 -0
  195. data/test/TestSuite/CSV-Reports/refs/sortBy_duration.down.csv +1 -0
  196. data/test/TestSuite/CSV-Reports/refs/sortBy_effort.up.csv +1 -0
  197. data/test/TestSuite/CSV-Reports/refs/sortBy_plan.start.down.csv +14 -13
  198. data/test/TestSuite/CSV-Reports/refs/targets.csv +5 -0
  199. data/test/TestSuite/CSV-Reports/refs/taskreport.csv +15 -14
  200. data/test/TestSuite/CSV-Reports/refs/taskreport_with_resources.csv +33 -32
  201. data/test/TestSuite/CSV-Reports/resourcereport.tjp +1 -0
  202. data/test/TestSuite/CSV-Reports/resourcereport_with_tasks.tjp +1 -0
  203. data/test/TestSuite/CSV-Reports/sortByTree.tjp +1 -0
  204. data/test/TestSuite/CSV-Reports/sortBy_duration.down.tjp +1 -0
  205. data/test/TestSuite/CSV-Reports/sortBy_effort.up.tjp +1 -0
  206. data/test/TestSuite/CSV-Reports/sortBy_plan.start.down.tjp +2 -1
  207. data/test/TestSuite/CSV-Reports/targets.tjp +20 -0
  208. data/test/TestSuite/CSV-Reports/taskreport.tjp +2 -1
  209. data/test/TestSuite/CSV-Reports/taskreport_with_resources.tjp +2 -1
  210. data/test/TestSuite/CSV-Reports/weekly.tjp +5 -2
  211. data/test/TestSuite/Export-Reports/export.tji +6 -0
  212. data/test/TestSuite/Export-Reports/refs/Account.tjp +92 -0
  213. data/test/TestSuite/Export-Reports/refs/AdoptedTasks.tjp +38 -0
  214. data/test/TestSuite/Export-Reports/refs/Allocate-1.tjp +124 -0
  215. data/test/TestSuite/Export-Reports/refs/Alternative.tjp +50 -0
  216. data/test/TestSuite/Export-Reports/refs/AutoID.tjp +45 -0
  217. data/test/TestSuite/Export-Reports/refs/AutoMacros.tjp +18 -0
  218. data/test/TestSuite/Export-Reports/refs/Booking.tjp +48 -0
  219. data/test/TestSuite/Export-Reports/refs/Caption.tjp +65 -0
  220. data/test/TestSuite/Export-Reports/refs/Celltext.tjp +45 -0
  221. data/test/TestSuite/Export-Reports/refs/Comments.tjp +67 -0
  222. data/test/TestSuite/Export-Reports/refs/Complete.tjp +50 -0
  223. data/test/TestSuite/Export-Reports/refs/CriticalPath.tjp +41 -0
  224. data/test/TestSuite/Export-Reports/refs/Currencyformat.tjp +18 -0
  225. data/test/TestSuite/Export-Reports/refs/CustomAttributes.tjp +24 -0
  226. data/test/TestSuite/Export-Reports/refs/DST.tjp +89 -0
  227. data/test/TestSuite/Export-Reports/refs/Depends1.tjp +57 -0
  228. data/test/TestSuite/Export-Reports/refs/Durations.tjp +84 -0
  229. data/test/TestSuite/Export-Reports/refs/Efficiency.tjp +58 -0
  230. data/test/TestSuite/Export-Reports/refs/Flags.tjp +51 -0
  231. data/test/TestSuite/Export-Reports/refs/Gap.tjp +38 -0
  232. data/test/TestSuite/Export-Reports/refs/HtmlTaskReport.tjp +67 -0
  233. data/test/TestSuite/Export-Reports/refs/Include.tjp +58 -0
  234. data/test/TestSuite/Export-Reports/refs/Journal.tjp +28 -0
  235. data/test/TestSuite/Export-Reports/refs/Limits-1.tjp +283 -0
  236. data/test/TestSuite/Export-Reports/refs/LoadUnits.tjp +617 -0
  237. data/test/TestSuite/Export-Reports/refs/LogicalExpression.tjp +18 -0
  238. data/test/TestSuite/Export-Reports/refs/LogicalFunction.tjp +57 -0
  239. data/test/TestSuite/Export-Reports/refs/Macro-1.tjp +91 -0
  240. data/test/TestSuite/Export-Reports/refs/Macro-2.tjp +18 -0
  241. data/test/TestSuite/Export-Reports/refs/Macro-3.tjp +18 -0
  242. data/test/TestSuite/Export-Reports/refs/Manager.tjp +121 -0
  243. data/test/TestSuite/Export-Reports/refs/Mandatory.tjp +59 -0
  244. data/test/TestSuite/Export-Reports/refs/Milestone.tjp +27 -0
  245. data/test/TestSuite/Export-Reports/refs/MinMax.tjp +30 -0
  246. data/test/TestSuite/Export-Reports/refs/Niku.tjp +218 -0
  247. data/test/TestSuite/Export-Reports/refs/Numberformat.tjp +18 -0
  248. data/test/TestSuite/Export-Reports/refs/Period.tjp +25 -0
  249. data/test/TestSuite/Export-Reports/refs/Persistent.tjp +49 -0
  250. data/test/TestSuite/Export-Reports/refs/Precedes1.tjp +46 -0
  251. data/test/TestSuite/Export-Reports/refs/Priority.tjp +141 -0
  252. data/test/TestSuite/Export-Reports/refs/Project.tjp +18 -0
  253. data/test/TestSuite/Export-Reports/refs/ProjectIDs.tjp +36 -0
  254. data/test/TestSuite/Export-Reports/refs/Query.tjp +49 -0
  255. data/test/TestSuite/Export-Reports/refs/ReleasePlan.tjp +79 -0
  256. data/test/TestSuite/Export-Reports/refs/Reports.tjp +130 -0
  257. data/test/TestSuite/Export-Reports/refs/Resource.tjp +59 -0
  258. data/test/TestSuite/Export-Reports/refs/ResourcePrefix.tjp +67 -0
  259. data/test/TestSuite/Export-Reports/refs/ResourceRoot.tjp +90 -0
  260. data/test/TestSuite/Export-Reports/refs/Responsible.tjp +50 -0
  261. data/test/TestSuite/Export-Reports/refs/RollupResource.tjp +90 -0
  262. data/test/TestSuite/Export-Reports/refs/Scenario.tjp +25 -0
  263. data/test/TestSuite/Export-Reports/refs/Scheduling.tjp +55 -0
  264. data/test/TestSuite/Export-Reports/refs/Select.tjp +89 -0
  265. data/test/TestSuite/Export-Reports/refs/Shift.tjp +39 -0
  266. data/test/TestSuite/Export-Reports/refs/Simple.tjp +67 -0
  267. data/test/TestSuite/Export-Reports/refs/StatusSheet.tjp +95 -0
  268. data/test/TestSuite/Export-Reports/refs/String.tjp +33 -0
  269. data/test/TestSuite/Export-Reports/refs/Supplement.tjp +41 -0
  270. data/test/TestSuite/Export-Reports/refs/TaskPrefix.tjp +49 -0
  271. data/test/TestSuite/Export-Reports/refs/TaskRoot.tjp +75 -0
  272. data/test/TestSuite/Export-Reports/refs/TimeFrame.tjp +51 -0
  273. data/test/TestSuite/Export-Reports/refs/TimeSheet1.tjp +81 -0
  274. data/test/TestSuite/Export-Reports/refs/Timezone.tjp +18 -0
  275. data/test/TestSuite/Export-Reports/refs/Vacation.tjp +69 -0
  276. data/test/TestSuite/Export-Reports/refs/tutorial.tjp +1061 -0
  277. data/test/TestSuite/Scheduler/Correct/Container-2.tjp +3 -1
  278. data/test/TestSuite/Scheduler/Correct/InheritStartEnd.tjp +5 -3
  279. data/test/TestSuite/Scheduler/Correct/Precedes.tjp +19 -19
  280. data/test/TestSuite/Scheduler/Correct/PriorityInversion.tjp +32 -0
  281. data/test/TestSuite/Scheduler/Correct/Scenarios.tjp +19 -0
  282. data/test/TestSuite/Scheduler/Correct/TimeSheet2.tjp +11 -0
  283. data/test/TestSuite/Scheduler/Correct/WeakDeps.tjp +14 -14
  284. data/test/TestSuite/Scheduler/Correct/checks.tji +5 -0
  285. data/test/TestSuite/Scheduler/Correct/css/tjmanual.css +20 -0
  286. data/test/TestSuite/StatusSheets/boss_mail +1 -1
  287. data/test/TestSuite/StatusSheets/dev2_mail +1 -1
  288. data/test/TestSuite/StatusSheets/run +2 -3
  289. data/test/TestSuite/Syntax/Correct/Account.tjp +1 -0
  290. data/test/TestSuite/Syntax/Correct/AdoptedTasks.tjp +9 -0
  291. data/test/TestSuite/Syntax/Correct/Allocate-1.tjp +3 -1
  292. data/test/TestSuite/Syntax/Correct/Alternative.tjp +3 -1
  293. data/test/TestSuite/Syntax/Correct/AutoID.tjp +3 -1
  294. data/test/TestSuite/Syntax/Correct/Booking.tjp +1 -0
  295. data/test/TestSuite/Syntax/Correct/Caption.tjp +3 -1
  296. data/test/TestSuite/Syntax/Correct/Celltext.tjp +3 -1
  297. data/test/TestSuite/Syntax/Correct/Comments.tjp +3 -1
  298. data/test/TestSuite/Syntax/Correct/Complete.tjp +1 -0
  299. data/test/TestSuite/Syntax/Correct/CriticalPath.tjp +2 -1
  300. data/test/TestSuite/Syntax/Correct/Currencyformat.tjp +2 -1
  301. data/test/TestSuite/Syntax/Correct/CustomAttributes.tjp +3 -2
  302. data/test/TestSuite/Syntax/Correct/DST.tjp +11 -0
  303. data/test/TestSuite/Syntax/Correct/Depends1.tjp +6 -4
  304. data/test/TestSuite/Syntax/Correct/Durations.tjp +3 -1
  305. data/test/TestSuite/Syntax/Correct/Efficiency.tjp +4 -2
  306. data/test/TestSuite/Syntax/Correct/Export.tjp +6 -4
  307. data/test/TestSuite/Syntax/Correct/Flags.tjp +3 -1
  308. data/test/TestSuite/Syntax/Correct/Freeze.tjp +2 -2
  309. data/test/TestSuite/Syntax/Correct/Gap.tjp +3 -1
  310. data/test/TestSuite/Syntax/Correct/HtmlTaskReport.tjp +4 -2
  311. data/test/TestSuite/Syntax/Correct/Include.tjp +3 -1
  312. data/test/TestSuite/Syntax/Correct/Journal.tjp +2 -1
  313. data/test/TestSuite/Syntax/Correct/Limits-1.tjp +13 -9
  314. data/test/TestSuite/Syntax/Correct/LoadUnits.tjp +1 -0
  315. data/test/TestSuite/Syntax/Correct/LogicalExpression.tjp +3 -1
  316. data/test/TestSuite/Syntax/Correct/LogicalFunction.tjp +3 -1
  317. data/test/TestSuite/Syntax/Correct/Macro-1.tjp +3 -1
  318. data/test/TestSuite/Syntax/Correct/Macro-2.tjp +3 -1
  319. data/test/TestSuite/Syntax/Correct/Macro-3.tjp +1 -0
  320. data/test/TestSuite/Syntax/Correct/Manager.tjp +4 -2
  321. data/test/TestSuite/Syntax/Correct/Mandatory.tjp +3 -1
  322. data/test/TestSuite/Syntax/Correct/Milestone.tjp +3 -1
  323. data/test/TestSuite/Syntax/Correct/MinMax.tjp +3 -1
  324. data/test/TestSuite/Syntax/Correct/Niku.tjp +1 -0
  325. data/test/TestSuite/Syntax/Correct/Numberformat.tjp +3 -2
  326. data/test/TestSuite/Syntax/Correct/Period.tjp +1 -0
  327. data/test/TestSuite/Syntax/Correct/Persistent.tjp +3 -1
  328. data/test/TestSuite/Syntax/Correct/Precedes1.tjp +6 -4
  329. data/test/TestSuite/Syntax/Correct/Priority.tjp +4 -2
  330. data/test/TestSuite/Syntax/Correct/Project.tjp +5 -4
  331. data/test/TestSuite/Syntax/Correct/ProjectIDs.tjp +3 -2
  332. data/test/TestSuite/Syntax/Correct/Query.tjp +1 -0
  333. data/test/TestSuite/Syntax/Correct/ReleasePlan.tjp +3 -1
  334. data/test/TestSuite/Syntax/Correct/Reports.tjp +7 -5
  335. data/test/TestSuite/Syntax/Correct/Resource.tjp +4 -2
  336. data/test/TestSuite/Syntax/Correct/ResourcePrefix.tjp +4 -2
  337. data/test/TestSuite/Syntax/Correct/ResourceRoot.tjp +3 -1
  338. data/test/TestSuite/Syntax/Correct/Responsible.tjp +3 -1
  339. data/test/TestSuite/Syntax/Correct/RollupResource.tjp +3 -1
  340. data/test/TestSuite/Syntax/Correct/Scenario.tjp +2 -1
  341. data/test/TestSuite/Syntax/Correct/Scheduling.tjp +3 -1
  342. data/test/TestSuite/Syntax/Correct/Select.tjp +3 -1
  343. data/test/TestSuite/Syntax/Correct/Shift.tjp +4 -2
  344. data/test/TestSuite/Syntax/Correct/Simple.tjp +3 -1
  345. data/test/TestSuite/Syntax/Correct/StatusSheet.tjp +4 -2
  346. data/test/TestSuite/Syntax/Correct/String.tjp +3 -1
  347. data/test/TestSuite/Syntax/Correct/Supplement.tjp +3 -1
  348. data/test/TestSuite/Syntax/Correct/TaskPrefix.tjp +3 -2
  349. data/test/TestSuite/Syntax/Correct/TaskRoot.tjp +3 -1
  350. data/test/TestSuite/Syntax/Correct/TimeFrame.tjp +3 -1
  351. data/test/TestSuite/Syntax/Correct/TimeSheet1.tjp +4 -2
  352. data/test/TestSuite/Syntax/Correct/Vacation.tjp +5 -3
  353. data/test/TestSuite/Syntax/Correct/tutorial.tjp +23 -16
  354. data/test/TestSuite/Syntax/Errors/adopt_common_root.tjp +10 -0
  355. data/test/TestSuite/Syntax/Errors/adopt_duplicate_child.tjp +10 -0
  356. data/test/TestSuite/Syntax/Errors/adopt_duplicate_parent.tjp +10 -0
  357. data/test/TestSuite/{Scheduler/Errors/milestone_duration.tjp → Syntax/Errors/multiple_durations.tjp} +1 -1
  358. data/test/TestSuite/Syntax/Errors/operand_unkn_scen.tjp +6 -4
  359. data/test/TestSuite/Syntax/Errors/sorting_crit_exptd1.tjp +5 -3
  360. data/test/TestSuite/TimeSheets/dev2_mail1 +1 -1
  361. data/test/TestSuite/TimeSheets/dev2_mail2 +1 -1
  362. data/test/TestSuite/TimeSheets/run +2 -2
  363. data/test/TestSuite/TimeSheets/uu.txt +29 -0
  364. data/test/test_AlgorithmDiff.rb +139 -0
  365. data/test/test_BatchProcessor.rb +2 -1
  366. data/test/test_CSV-Reports.rb +30 -19
  367. data/test/test_CSVFile.rb +2 -1
  368. data/test/test_CollisionDetector.rb +2 -1
  369. data/test/test_Export-Reports.rb +128 -0
  370. data/test/test_Journal.rb +2 -1
  371. data/test/test_Limits.rb +4 -3
  372. data/test/test_LogicalExpression.rb +2 -1
  373. data/test/test_MacroTable.rb +8 -6
  374. data/test/test_Project.rb +2 -1
  375. data/test/test_ProjectFileScanner.rb +4 -3
  376. data/test/test_PropertySet.rb +2 -1
  377. data/test/test_Query.rb +3 -2
  378. data/test/test_RealFormat.rb +2 -1
  379. data/test/test_ReportGenerator.rb +3 -2
  380. data/test/test_RichText.rb +14 -3
  381. data/test/test_Scheduler.rb +2 -1
  382. data/test/test_ShiftAssignments.rb +3 -1
  383. data/test/test_SimpleQueryExpander.rb +3 -2
  384. data/test/test_Syntax.rb +2 -1
  385. data/test/test_TextFormatter.rb +2 -1
  386. data/test/test_TjTime.rb +15 -14
  387. data/test/test_TjpExample.rb +2 -1
  388. data/test/test_URLParameter.rb +2 -1
  389. data/test/test_UTF8String.rb +2 -1
  390. data/test/test_WorkingHours.rb +3 -2
  391. data/test/test_deep_copy.rb +2 -1
  392. metadata +250 -541
  393. data/README +0 -31
  394. data/benchmarks/allocatedSlots.csv +0 -334
  395. data/benchmarks/profile.clt +0 -42974
  396. data/benchmarks/profile.html +0 -61128
  397. data/doc/AppConfig.html +0 -1471
  398. data/doc/Arguments.html +0 -720
  399. data/doc/CHANGELOG.html +0 -1987
  400. data/doc/COPYING.html +0 -879
  401. data/doc/Object.html +0 -1056
  402. data/doc/README.html +0 -565
  403. data/doc/RuntimeConfig.html +0 -804
  404. data/doc/String.html +0 -913
  405. data/doc/TaskJuggler.html +0 -2512
  406. data/doc/TaskJuggler/Account.html +0 -733
  407. data/doc/TaskJuggler/AccountAttribute.html +0 -749
  408. data/doc/TaskJuggler/AccountScenario.html +0 -692
  409. data/doc/TaskJuggler/Allocation.html +0 -943
  410. data/doc/TaskJuggler/AllocationAttribute.html +0 -779
  411. data/doc/TaskJuggler/AttributeBase.html +0 -1308
  412. data/doc/TaskJuggler/AttributeDefinition.html +0 -795
  413. data/doc/TaskJuggler/AttributeOverwrite.html +0 -586
  414. data/doc/TaskJuggler/BatchProcessor.html +0 -1158
  415. data/doc/TaskJuggler/Booking.html +0 -839
  416. data/doc/TaskJuggler/BookingListAttribute.html +0 -749
  417. data/doc/TaskJuggler/BooleanAttribute.html +0 -749
  418. data/doc/TaskJuggler/CSVFile.html +0 -1108
  419. data/doc/TaskJuggler/CellSettingPattern.html +0 -680
  420. data/doc/TaskJuggler/CellSettingPatternList.html +0 -729
  421. data/doc/TaskJuggler/Charge.html +0 -757
  422. data/doc/TaskJuggler/ChargeListAttribute.html +0 -713
  423. data/doc/TaskJuggler/ChargeSet.html +0 -929
  424. data/doc/TaskJuggler/ChargeSetListAttribute.html +0 -758
  425. data/doc/TaskJuggler/CollisionDetector.html +0 -1069
  426. data/doc/TaskJuggler/ColumnListAttribute.html +0 -713
  427. data/doc/TaskJuggler/ColumnTable.html +0 -743
  428. data/doc/TaskJuggler/Daemon.html +0 -798
  429. data/doc/TaskJuggler/DataCache.html +0 -930
  430. data/doc/TaskJuggler/DataCacheEntry.html +0 -717
  431. data/doc/TaskJuggler/DateAttribute.html +0 -717
  432. data/doc/TaskJuggler/DefinitionListAttribute.html +0 -635
  433. data/doc/TaskJuggler/DependencyListAttribute.html +0 -753
  434. data/doc/TaskJuggler/DurationAttribute.html +0 -750
  435. data/doc/TaskJuggler/FileList.html +0 -731
  436. data/doc/TaskJuggler/FileRecord.html +0 -682
  437. data/doc/TaskJuggler/FixnumAttribute.html +0 -671
  438. data/doc/TaskJuggler/FlagListAttribute.html +0 -749
  439. data/doc/TaskJuggler/FloatAttribute.html +0 -713
  440. data/doc/TaskJuggler/FormatListAttribute.html +0 -677
  441. data/doc/TaskJuggler/GanttChart.html +0 -1467
  442. data/doc/TaskJuggler/GanttContainer.html +0 -925
  443. data/doc/TaskJuggler/GanttHeader.html +0 -928
  444. data/doc/TaskJuggler/GanttHeaderScaleItem.html +0 -742
  445. data/doc/TaskJuggler/GanttLine.html +0 -1305
  446. data/doc/TaskJuggler/GanttLoadStack.html +0 -808
  447. data/doc/TaskJuggler/GanttMilestone.html +0 -906
  448. data/doc/TaskJuggler/GanttRouter.html +0 -1118
  449. data/doc/TaskJuggler/GanttTaskBar.html +0 -927
  450. data/doc/TaskJuggler/HTMLDocument.html +0 -761
  451. data/doc/TaskJuggler/HTMLGraphics.html +0 -817
  452. data/doc/TaskJuggler/Interval.html +0 -1056
  453. data/doc/TaskJuggler/IntervalList.html +0 -777
  454. data/doc/TaskJuggler/IntervalListAttribute.html +0 -753
  455. data/doc/TaskJuggler/JobInfo.html +0 -923
  456. data/doc/TaskJuggler/Journal.html +0 -1158
  457. data/doc/TaskJuggler/JournalEntry.html +0 -821
  458. data/doc/TaskJuggler/JournalEntryList.html +0 -1071
  459. data/doc/TaskJuggler/KeywordArray.html +0 -676
  460. data/doc/TaskJuggler/KeywordDocumentation.html +0 -1838
  461. data/doc/TaskJuggler/Limits.html +0 -1016
  462. data/doc/TaskJuggler/Limits/Limit.html +0 -927
  463. data/doc/TaskJuggler/LimitsAttribute.html +0 -714
  464. data/doc/TaskJuggler/ListAttributeBase.html +0 -683
  465. data/doc/TaskJuggler/Log.html +0 -1143
  466. data/doc/TaskJuggler/LogFile.html +0 -960
  467. data/doc/TaskJuggler/LogicalAttribute.html +0 -740
  468. data/doc/TaskJuggler/LogicalExpression.html +0 -781
  469. data/doc/TaskJuggler/LogicalExpressionAttribute.html +0 -671
  470. data/doc/TaskJuggler/LogicalExpressionListAttribute.html +0 -671
  471. data/doc/TaskJuggler/LogicalFlag.html +0 -723
  472. data/doc/TaskJuggler/LogicalFunction.html +0 -1306
  473. data/doc/TaskJuggler/LogicalOperation.html +0 -1124
  474. data/doc/TaskJuggler/Macro.html +0 -688
  475. data/doc/TaskJuggler/MacroTable.html +0 -852
  476. data/doc/TaskJuggler/ManagerResponsibilities.html +0 -716
  477. data/doc/TaskJuggler/ManagerStatusRecord.html +0 -720
  478. data/doc/TaskJuggler/Message.html +0 -817
  479. data/doc/TaskJuggler/MessageHandler.html +0 -1036
  480. data/doc/TaskJuggler/Navigator.html +0 -922
  481. data/doc/TaskJuggler/NavigatorElement.html +0 -974
  482. data/doc/TaskJuggler/NikuProject.html +0 -704
  483. data/doc/TaskJuggler/NikuReport.html +0 -1449
  484. data/doc/TaskJuggler/NikuResource.html +0 -674
  485. data/doc/TaskJuggler/NodeListAttribute.html +0 -635
  486. data/doc/TaskJuggler/PlaceHolderCell.html +0 -728
  487. data/doc/TaskJuggler/ProcessIntercom.html +0 -997
  488. data/doc/TaskJuggler/ProcessIntercomIface.html +0 -753
  489. data/doc/TaskJuggler/Project.html +0 -3333
  490. data/doc/TaskJuggler/ProjectBroker.html +0 -1656
  491. data/doc/TaskJuggler/ProjectBrokerIface.html +0 -831
  492. data/doc/TaskJuggler/ProjectFileParser.html +0 -2033
  493. data/doc/TaskJuggler/ProjectFileScanner.html +0 -1816
  494. data/doc/TaskJuggler/ProjectRecord.html +0 -958
  495. data/doc/TaskJuggler/ProjectServer.html +0 -1229
  496. data/doc/TaskJuggler/ProjectServerIface.html +0 -848
  497. data/doc/TaskJuggler/PropertyAttribute.html +0 -671
  498. data/doc/TaskJuggler/PropertyList.html +0 -1379
  499. data/doc/TaskJuggler/PropertySet.html +0 -1799
  500. data/doc/TaskJuggler/PropertyTreeNode.html +0 -2579
  501. data/doc/TaskJuggler/Query.html +0 -1663
  502. data/doc/TaskJuggler/RTFHandlers.html +0 -644
  503. data/doc/TaskJuggler/RTFNavigator.html +0 -772
  504. data/doc/TaskJuggler/RTFQuery.html +0 -1040
  505. data/doc/TaskJuggler/RTFReport.html +0 -800
  506. data/doc/TaskJuggler/RTFReportLink.html +0 -792
  507. data/doc/TaskJuggler/RTFWithQuerySupport.html +0 -682
  508. data/doc/TaskJuggler/RealFormat.html +0 -785
  509. data/doc/TaskJuggler/RealFormatAttribute.html +0 -635
  510. data/doc/TaskJuggler/ReferenceAttribute.html +0 -824
  511. data/doc/TaskJuggler/Report.html +0 -1477
  512. data/doc/TaskJuggler/ReportBase.html +0 -1246
  513. data/doc/TaskJuggler/ReportContext.html +0 -816
  514. data/doc/TaskJuggler/ReportServer.html +0 -1048
  515. data/doc/TaskJuggler/ReportServerIface.html +0 -882
  516. data/doc/TaskJuggler/ReportServerRecord.html +0 -761
  517. data/doc/TaskJuggler/ReportServlet.html +0 -1024
  518. data/doc/TaskJuggler/ReportTable.html +0 -1159
  519. data/doc/TaskJuggler/ReportTableCell.html +0 -1646
  520. data/doc/TaskJuggler/ReportTableColumn.html +0 -870
  521. data/doc/TaskJuggler/ReportTableLegend.html +0 -1040
  522. data/doc/TaskJuggler/ReportTableLine.html +0 -1047
  523. data/doc/TaskJuggler/Resource.html +0 -972
  524. data/doc/TaskJuggler/ResourceListAttribute.html +0 -810
  525. data/doc/TaskJuggler/ResourceListRE.html +0 -717
  526. data/doc/TaskJuggler/ResourceScenario.html +0 -2599
  527. data/doc/TaskJuggler/RichText.html +0 -859
  528. data/doc/TaskJuggler/RichTextAttribute.html +0 -785
  529. data/doc/TaskJuggler/RichTextDocument.html +0 -1018
  530. data/doc/TaskJuggler/RichTextElement.html +0 -1754
  531. data/doc/TaskJuggler/RichTextFunctionExample.html +0 -779
  532. data/doc/TaskJuggler/RichTextFunctionHandler.html +0 -730
  533. data/doc/TaskJuggler/RichTextImage.html +0 -692
  534. data/doc/TaskJuggler/RichTextIntermediate.html +0 -1265
  535. data/doc/TaskJuggler/RichTextParser.html +0 -847
  536. data/doc/TaskJuggler/RichTextScanner.html +0 -1469
  537. data/doc/TaskJuggler/RichTextSnip.html +0 -980
  538. data/doc/TaskJuggler/RichTextSyntaxRules.html +0 -2018
  539. data/doc/TaskJuggler/Scenario.html +0 -636
  540. data/doc/TaskJuggler/ScenarioData.html +0 -818
  541. data/doc/TaskJuggler/ScenarioListAttribute.html +0 -713
  542. data/doc/TaskJuggler/Scoreboard.html +0 -1181
  543. data/doc/TaskJuggler/SheetHandlerBase.html +0 -1275
  544. data/doc/TaskJuggler/SheetReceiver.html +0 -1368
  545. data/doc/TaskJuggler/SheetSender.html +0 -1134
  546. data/doc/TaskJuggler/Shift.html +0 -731
  547. data/doc/TaskJuggler/ShiftAssignment.html +0 -988
  548. data/doc/TaskJuggler/ShiftAssignments.html +0 -1393
  549. data/doc/TaskJuggler/ShiftAssignmentsAttribute.html +0 -714
  550. data/doc/TaskJuggler/ShiftScenario.html +0 -762
  551. data/doc/TaskJuggler/SimpleQueryExpander.html +0 -713
  552. data/doc/TaskJuggler/SortListAttribute.html +0 -671
  553. data/doc/TaskJuggler/SourceFileInfo.html +0 -740
  554. data/doc/TaskJuggler/StatusSheetReceiver.html +0 -658
  555. data/doc/TaskJuggler/StatusSheetReport.html +0 -910
  556. data/doc/TaskJuggler/StatusSheetSender.html +0 -788
  557. data/doc/TaskJuggler/StringAttribute.html +0 -713
  558. data/doc/TaskJuggler/SymbolAttribute.html +0 -671
  559. data/doc/TaskJuggler/SyntaxReference.html +0 -1220
  560. data/doc/TaskJuggler/TOCEntry.html +0 -816
  561. data/doc/TaskJuggler/TSResourceRecord.html +0 -712
  562. data/doc/TaskJuggler/TSTaskRecord.html +0 -724
  563. data/doc/TaskJuggler/TableColumnDefinition.html +0 -928
  564. data/doc/TaskJuggler/TableOfContents.html +0 -770
  565. data/doc/TaskJuggler/TableReport.html +0 -2533
  566. data/doc/TaskJuggler/Task.html +0 -865
  567. data/doc/TaskJuggler/TaskDependency.html +0 -772
  568. data/doc/TaskJuggler/TaskListAttribute.html +0 -753
  569. data/doc/TaskJuggler/TaskListRE.html +0 -716
  570. data/doc/TaskJuggler/TaskScenario.html +0 -4959
  571. data/doc/TaskJuggler/TextFormatter.html +0 -953
  572. data/doc/TaskJuggler/TextParser.html +0 -1773
  573. data/doc/TaskJuggler/TextParser/Pattern.html +0 -1717
  574. data/doc/TaskJuggler/TextParser/Rule.html +0 -1399
  575. data/doc/TaskJuggler/TextParser/StackElement.html +0 -922
  576. data/doc/TaskJuggler/TextParser/State.html +0 -995
  577. data/doc/TaskJuggler/TextParser/StateTransition.html +0 -788
  578. data/doc/TaskJuggler/TextParser/TextParserResultArray.html +0 -691
  579. data/doc/TaskJuggler/TextParser/TokenDoc.html +0 -722
  580. data/doc/TaskJuggler/TextReport.html +0 -901
  581. data/doc/TaskJuggler/TextScanner.html +0 -1482
  582. data/doc/TaskJuggler/TextScanner/BufferStreamHandle.html +0 -641
  583. data/doc/TaskJuggler/TextScanner/FileStreamHandle.html +0 -707
  584. data/doc/TaskJuggler/TextScanner/MacroStackEntry.html +0 -704
  585. data/doc/TaskJuggler/TextScanner/StreamHandle.html +0 -1036
  586. data/doc/TaskJuggler/TimeSheet.html +0 -1232
  587. data/doc/TaskJuggler/TimeSheetReceiver.html +0 -655
  588. data/doc/TaskJuggler/TimeSheetRecord.html +0 -1395
  589. data/doc/TaskJuggler/TimeSheetReport.html +0 -991
  590. data/doc/TaskJuggler/TimeSheetSender.html +0 -680
  591. data/doc/TaskJuggler/TimeSheetSummary.html +0 -935
  592. data/doc/TaskJuggler/TimeSheets.html +0 -716
  593. data/doc/TaskJuggler/Tj3AppBase.html +0 -831
  594. data/doc/TaskJuggler/Tj3Client.html +0 -1477
  595. data/doc/TaskJuggler/Tj3Daemon.html +0 -884
  596. data/doc/TaskJuggler/Tj3SheetAppBase.html +0 -738
  597. data/doc/TaskJuggler/Tj3SsReceiver.html +0 -724
  598. data/doc/TaskJuggler/Tj3SsSender.html +0 -757
  599. data/doc/TaskJuggler/Tj3TsReceiver.html +0 -724
  600. data/doc/TaskJuggler/Tj3TsSender.html +0 -744
  601. data/doc/TaskJuggler/Tj3TsSummary.html +0 -752
  602. data/doc/TaskJuggler/TjException.html +0 -672
  603. data/doc/TaskJuggler/TjTime.html +0 -2807
  604. data/doc/TaskJuggler/TjpExample.html +0 -877
  605. data/doc/TaskJuggler/TjpExportRE.html +0 -1598
  606. data/doc/TaskJuggler/TjpSyntaxRules.html +0 -13611
  607. data/doc/TaskJuggler/URLParameter.html +0 -671
  608. data/doc/TaskJuggler/UserManual.html +0 -1188
  609. data/doc/TaskJuggler/VimSyntax.html +0 -1044
  610. data/doc/TaskJuggler/WebServer.html +0 -737
  611. data/doc/TaskJuggler/WelcomePage.html +0 -769
  612. data/doc/TaskJuggler/WorkingHours.html +0 -1207
  613. data/doc/TaskJuggler/WorkingHoursAttribute.html +0 -736
  614. data/doc/TaskJuggler/XMLBlob.html +0 -687
  615. data/doc/TaskJuggler/XMLComment.html +0 -682
  616. data/doc/TaskJuggler/XMLDocument.html +0 -774
  617. data/doc/TaskJuggler/XMLElement.html +0 -942
  618. data/doc/TaskJuggler/XMLNamedText.html +0 -643
  619. data/doc/TaskJuggler/XMLText.html +0 -697
  620. data/doc/index.html +0 -4127
  621. data/doc/lib/AccountScenario_rb.html +0 -69
  622. data/doc/lib/Account_rb.html +0 -71
  623. data/doc/lib/Allocation_rb.html +0 -71
  624. data/doc/lib/AppConfig_rb.html +0 -71
  625. data/doc/lib/AttributeBase_rb.html +0 -69
  626. data/doc/lib/AttributeDefinition_rb.html +0 -67
  627. data/doc/lib/Attributes_rb.html +0 -83
  628. data/doc/lib/BatchProcessor_rb.html +0 -71
  629. data/doc/lib/Booking_rb.html +0 -67
  630. data/doc/lib/ChargeSet_rb.html +0 -69
  631. data/doc/lib/Charge_rb.html +0 -69
  632. data/doc/lib/DataCache_rb.html +0 -71
  633. data/doc/lib/FileList_rb.html +0 -67
  634. data/doc/lib/HTMLDocument_rb.html +0 -69
  635. data/doc/lib/IntervalList_rb.html +0 -69
  636. data/doc/lib/Interval_rb.html +0 -69
  637. data/doc/lib/Journal_rb.html +0 -67
  638. data/doc/lib/KeywordArray_rb.html +0 -67
  639. data/doc/lib/KeywordDocumentation_rb.html +0 -77
  640. data/doc/lib/Limits_rb.html +0 -69
  641. data/doc/lib/LogFile_rb.html +0 -69
  642. data/doc/lib/Log_rb.html +0 -71
  643. data/doc/lib/LogicalExpression_rb.html +0 -73
  644. data/doc/lib/LogicalFunction_rb.html +0 -69
  645. data/doc/lib/LogicalOperation_rb.html +0 -69
  646. data/doc/lib/MacroTable_rb.html +0 -73
  647. data/doc/lib/MessageHandler_rb.html +0 -67
  648. data/doc/lib/ProjectFileParser_rb.html +0 -77
  649. data/doc/lib/ProjectFileScanner_rb.html +0 -69
  650. data/doc/lib/Project_rb.html +0 -113
  651. data/doc/lib/PropertyList_rb.html +0 -67
  652. data/doc/lib/PropertySet_rb.html +0 -71
  653. data/doc/lib/PropertyTreeNode_rb.html +0 -67
  654. data/doc/lib/Query_rb.html +0 -69
  655. data/doc/lib/RTFHandlers_rb.html +0 -75
  656. data/doc/lib/RTFNavigator_rb.html +0 -73
  657. data/doc/lib/RTFQuery_rb.html +0 -73
  658. data/doc/lib/RTFReportLink_rb.html +0 -75
  659. data/doc/lib/RTFReport_rb.html +0 -71
  660. data/doc/lib/RTFWithQuerySupport_rb.html +0 -69
  661. data/doc/lib/RealFormat_rb.html +0 -67
  662. data/doc/lib/ResourceScenario_rb.html +0 -69
  663. data/doc/lib/Resource_rb.html +0 -71
  664. data/doc/lib/RichTextDocument_rb.html +0 -73
  665. data/doc/lib/RichTextElement_rb.html +0 -75
  666. data/doc/lib/RichTextFunctionExample_rb.html +0 -73
  667. data/doc/lib/RichTextFunctionHandler_rb.html +0 -67
  668. data/doc/lib/RichTextParser_rb.html +0 -73
  669. data/doc/lib/RichTextScanner_rb.html +0 -71
  670. data/doc/lib/RichTextSnip_rb.html +0 -71
  671. data/doc/lib/RichTextSyntaxRules_rb.html +0 -67
  672. data/doc/lib/RichText_rb.html +0 -73
  673. data/doc/lib/RuntimeConfig_rb.html +0 -69
  674. data/doc/lib/ScenarioData_rb.html +0 -71
  675. data/doc/lib/Scenario_rb.html +0 -69
  676. data/doc/lib/Scoreboard_rb.html +0 -69
  677. data/doc/lib/SheetHandlerBase_rb.html +0 -75
  678. data/doc/lib/SheetReceiver_rb.html +0 -79
  679. data/doc/lib/SheetSender_rb.html +0 -77
  680. data/doc/lib/ShiftAssignments_rb.html +0 -71
  681. data/doc/lib/ShiftScenario_rb.html +0 -69
  682. data/doc/lib/Shift_rb.html +0 -71
  683. data/doc/lib/SimpleQueryExpander_rb.html +0 -69
  684. data/doc/lib/SourceFileInfo_rb.html +0 -67
  685. data/doc/lib/StatusSheetReceiver_rb.html +0 -69
  686. data/doc/lib/StatusSheetSender_rb.html +0 -69
  687. data/doc/lib/SyntaxReference_rb.html +0 -75
  688. data/doc/lib/TOCEntry_rb.html +0 -71
  689. data/doc/lib/TableColumnDefinition_rb.html +0 -67
  690. data/doc/lib/TableOfContents_rb.html +0 -71
  691. data/doc/lib/TaskDependency_rb.html +0 -67
  692. data/doc/lib/TaskJuggler_rb.html +0 -75
  693. data/doc/lib/TaskScenario_rb.html +0 -71
  694. data/doc/lib/Task_rb.html +0 -71
  695. data/doc/lib/TextFormatter_rb.html +0 -69
  696. data/doc/lib/TextParser/Pattern_rb.html +0 -71
  697. data/doc/lib/TextParser/Rule_rb.html +0 -69
  698. data/doc/lib/TextParser/StackElement_rb.html +0 -69
  699. data/doc/lib/TextParser/State_rb.html +0 -67
  700. data/doc/lib/TextParser/TokenDoc_rb.html +0 -67
  701. data/doc/lib/TextParser_rb.html +0 -79
  702. data/doc/lib/TextScanner_rb.html +0 -83
  703. data/doc/lib/TimeSheetReceiver_rb.html +0 -69
  704. data/doc/lib/TimeSheetSender_rb.html +0 -69
  705. data/doc/lib/TimeSheetSummary_rb.html +0 -69
  706. data/doc/lib/TimeSheets_rb.html +0 -67
  707. data/doc/lib/Tj3AppBase_rb.html +0 -79
  708. data/doc/lib/Tj3Config_rb.html +0 -71
  709. data/doc/lib/Tj3SheetAppBase_rb.html +0 -69
  710. data/doc/lib/TjException_rb.html +0 -67
  711. data/doc/lib/TjTime_rb.html +0 -71
  712. data/doc/lib/TjpExample_rb.html +0 -69
  713. data/doc/lib/TjpSyntaxRules_rb.html +0 -67
  714. data/doc/lib/URLParameter_rb.html +0 -69
  715. data/doc/lib/UTF8String_rb.html +0 -67
  716. data/doc/lib/UserManual_rb.html +0 -79
  717. data/doc/lib/VimSyntax_rb.html +0 -69
  718. data/doc/lib/WorkingHours_rb.html +0 -71
  719. data/doc/lib/XMLDocument_rb.html +0 -69
  720. data/doc/lib/XMLElement_rb.html +0 -69
  721. data/doc/lib/daemon/Daemon_rb.html +0 -69
  722. data/doc/lib/daemon/ProcessIntercom_rb.html +0 -71
  723. data/doc/lib/daemon/ProjectBroker_rb.html +0 -83
  724. data/doc/lib/daemon/ProjectServer_rb.html +0 -85
  725. data/doc/lib/daemon/ReportServer_rb.html +0 -73
  726. data/doc/lib/daemon/ReportServlet_rb.html +0 -69
  727. data/doc/lib/daemon/WebServer_rb.html +0 -81
  728. data/doc/lib/daemon/WelcomePage_rb.html +0 -71
  729. data/doc/lib/deep_copy_rb.html +0 -67
  730. data/doc/lib/exchangebug_rb.html +0 -69
  731. data/doc/lib/reports/CSVFile_rb.html +0 -69
  732. data/doc/lib/reports/CollisionDetector_rb.html +0 -69
  733. data/doc/lib/reports/ColumnTable_rb.html +0 -69
  734. data/doc/lib/reports/GanttChart_rb.html +0 -75
  735. data/doc/lib/reports/GanttContainer_rb.html +0 -69
  736. data/doc/lib/reports/GanttHeaderScaleItem_rb.html +0 -67
  737. data/doc/lib/reports/GanttHeader_rb.html +0 -69
  738. data/doc/lib/reports/GanttLine_rb.html +0 -79
  739. data/doc/lib/reports/GanttLoadStack_rb.html +0 -69
  740. data/doc/lib/reports/GanttMilestone_rb.html +0 -69
  741. data/doc/lib/reports/GanttRouter_rb.html +0 -69
  742. data/doc/lib/reports/GanttTaskBar_rb.html +0 -69
  743. data/doc/lib/reports/HTMLGraphics_rb.html +0 -67
  744. data/doc/lib/reports/Navigator_rb.html +0 -69
  745. data/doc/lib/reports/NikuReport_rb.html +0 -71
  746. data/doc/lib/reports/ReportBase_rb.html +0 -67
  747. data/doc/lib/reports/ReportContext_rb.html +0 -67
  748. data/doc/lib/reports/ReportTableCell_rb.html +0 -67
  749. data/doc/lib/reports/ReportTableColumn_rb.html +0 -67
  750. data/doc/lib/reports/ReportTableLegend_rb.html +0 -67
  751. data/doc/lib/reports/ReportTableLine_rb.html +0 -69
  752. data/doc/lib/reports/ReportTable_rb.html +0 -71
  753. data/doc/lib/reports/Report_rb.html +0 -93
  754. data/doc/lib/reports/ResourceListRE_rb.html +0 -75
  755. data/doc/lib/reports/StatusSheetReport_rb.html +0 -69
  756. data/doc/lib/reports/TableReport_rb.html +0 -77
  757. data/doc/lib/reports/TaskListRE_rb.html +0 -75
  758. data/doc/lib/reports/TextReport_rb.html +0 -69
  759. data/doc/lib/reports/TimeSheetReport_rb.html +0 -69
  760. data/doc/lib/reports/TjpExportRE_rb.html +0 -69
  761. data/doc/lib/ruby-signal-bug_rb.html +0 -69
  762. data/doc/lib/test_rb.html +0 -73
  763. data/doc/lib/tj3_rb.html +0 -75
  764. data/doc/lib/tj3client_rb.html +0 -75
  765. data/doc/lib/tj3d_rb.html +0 -75
  766. data/doc/lib/tj3man_rb.html +0 -75
  767. data/doc/lib/tj3ss_receiver_rb.html +0 -71
  768. data/doc/lib/tj3ss_sender_rb.html +0 -71
  769. data/doc/lib/tj3ts_receiver_rb.html +0 -71
  770. data/doc/lib/tj3ts_sender_rb.html +0 -71
  771. data/doc/lib/tj3ts_summary_rb.html +0 -71
  772. data/doc/rdoc.css +0 -706
  773. data/lib/test.rb +0 -19
  774. data/setup.rb +0 -1585
  775. data/test/TestSuite/CSV-Reports/genrefs +0 -6
  776. data/test/TestSuite/Scheduler/Correct/Allocate.html +0 -2922
  777. data/test/TestSuite/Scheduler/Correct/Booking2.html +0 -603
  778. data/test/TestSuite/Scheduler/Correct/Container.html +0 -513
  779. data/test/TestSuite/Scheduler/Correct/Precedes.html +0 -834
  780. data/test/TestSuite/Scheduler/Correct/Shift.html +0 -429
  781. data/test/TestSuite/Scheduler/Correct/Shift2.html +0 -476
  782. data/test/TestSuite/Scheduler/Correct/TimeSheet2.html +0 -108
  783. data/test/TestSuite/Scheduler/Errors/task_underspecified_2.tjp +0 -8
  784. data/test/TestSuite/Syntax/Correct/ReleasePlan.html +0 -160
  785. data/test/TestSuite/Syntax/Correct/ResourcePrefix.html +0 -32
  786. data/test/TestSuite/Syntax/Correct/ResourceRoot.html +0 -108
  787. data/test/TestSuite/Syntax/Correct/niku.html +0 -67
@@ -1,2807 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
- <head>
6
- <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
7
-
8
- <title>Class: TaskJuggler::TjTime</title>
9
-
10
- <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
11
-
12
- <script src="../js/jquery.js" type="text/javascript"
13
- charset="utf-8"></script>
14
- <script src="../js/thickbox-compressed.js" type="text/javascript"
15
- charset="utf-8"></script>
16
- <script src="../js/quicksearch.js" type="text/javascript"
17
- charset="utf-8"></script>
18
- <script src="../js/darkfish.js" type="text/javascript"
19
- charset="utf-8"></script>
20
-
21
- </head>
22
- <body class="class">
23
-
24
- <div id="metadata">
25
- <div id="home-metadata">
26
- <div id="home-section" class="section">
27
- <h3 class="section-header">
28
- <a href="../index.html">Home</a>
29
- <a href="../index.html#classes">Classes</a>
30
- <a href="../index.html#methods">Methods</a>
31
- </h3>
32
- </div>
33
- </div>
34
-
35
- <div id="file-metadata">
36
- <div id="file-list-section" class="section">
37
- <h3 class="section-header">In Files</h3>
38
- <div class="section-body">
39
- <ul>
40
-
41
- <li><a href="../lib/TjTime_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
42
- class="thickbox" title="lib/TjTime.rb">lib/TjTime.rb</a></li>
43
-
44
- </ul>
45
- </div>
46
- </div>
47
-
48
-
49
- </div>
50
-
51
- <div id="class-metadata">
52
-
53
- <!-- Parent Class -->
54
-
55
- <div id="parent-class-section" class="section">
56
- <h3 class="section-header">Parent</h3>
57
-
58
- <p class="link"><a href="../Object.html">Object</a></p>
59
-
60
- </div>
61
-
62
-
63
- <!-- Namespace Contents -->
64
-
65
-
66
- <!-- Method Quickref -->
67
-
68
- <div id="method-list-section" class="section">
69
- <h3 class="section-header">Methods</h3>
70
- <ul class="link-list">
71
-
72
- <li><a href="#method-c-checkTimeZone">::checkTimeZone</a></li>
73
-
74
- <li><a href="#method-c-gm">::gm</a></li>
75
-
76
- <li><a href="#method-c-local">::local</a></li>
77
-
78
- <li><a href="#method-c-new">::new</a></li>
79
-
80
- <li><a href="#method-c-now">::now</a></li>
81
-
82
- <li><a href="#method-c-parse">::parse</a></li>
83
-
84
- <li><a href="#method-i-%25">#%</a></li>
85
-
86
- <li><a href="#method-i-%2B">#+</a></li>
87
-
88
- <li><a href="#method-i--">#-</a></li>
89
-
90
- <li><a href="#method-i-%3C">#<</a></li>
91
-
92
- <li><a href="#method-i-%3C%3D">#<=</a></li>
93
-
94
- <li><a href="#method-i-%3C%3D%3E">#<=></a></li>
95
-
96
- <li><a href="#method-i-%3D%3D">#==</a></li>
97
-
98
- <li><a href="#method-i-%3E">#></a></li>
99
-
100
- <li><a href="#method-i-%3E%3D">#>=</a></li>
101
-
102
- <li><a href="#method-i-align">#align</a></li>
103
-
104
- <li><a href="#method-i-beginOfHour">#beginOfHour</a></li>
105
-
106
- <li><a href="#method-i-beginOfMonth">#beginOfMonth</a></li>
107
-
108
- <li><a href="#method-i-beginOfQuarter">#beginOfQuarter</a></li>
109
-
110
- <li><a href="#method-i-beginOfWeek">#beginOfWeek</a></li>
111
-
112
- <li><a href="#method-i-beginOfYear">#beginOfYear</a></li>
113
-
114
- <li><a href="#method-i-countIntervals">#countIntervals</a></li>
115
-
116
- <li><a href="#method-i-daysTo">#daysTo</a></li>
117
-
118
- <li><a href="#method-i-hoursLater">#hoursLater</a></li>
119
-
120
- <li><a href="#method-i-hoursTo">#hoursTo</a></li>
121
-
122
- <li><a href="#method-i-leapYear%3F">#leapYear?</a></li>
123
-
124
- <li><a href="#method-i-method_missing">#method_missing</a></li>
125
-
126
- <li><a href="#method-i-midnight">#midnight</a></li>
127
-
128
- <li><a href="#method-i-monthAndYear">#monthAndYear</a></li>
129
-
130
- <li><a href="#method-i-monthsTo">#monthsTo</a></li>
131
-
132
- <li><a href="#method-i-nextDayOfWeek">#nextDayOfWeek</a></li>
133
-
134
- <li><a href="#method-i-order">#order</a></li>
135
-
136
- <li><a href="#method-i-quarterName">#quarterName</a></li>
137
-
138
- <li><a href="#method-i-quartersTo">#quartersTo</a></li>
139
-
140
- <li><a href="#method-i-sameTimeNextDay">#sameTimeNextDay</a></li>
141
-
142
- <li><a href="#method-i-sameTimeNextHour">#sameTimeNextHour</a></li>
143
-
144
- <li><a href="#method-i-sameTimeNextMonth">#sameTimeNextMonth</a></li>
145
-
146
- <li><a href="#method-i-sameTimeNextQuarter">#sameTimeNextQuarter</a></li>
147
-
148
- <li><a href="#method-i-sameTimeNextWeek">#sameTimeNextWeek</a></li>
149
-
150
- <li><a href="#method-i-sameTimeNextYear">#sameTimeNextYear</a></li>
151
-
152
- <li><a href="#method-i-secondsOfDay">#secondsOfDay</a></li>
153
-
154
- <li><a href="#method-i-shortMonthName">#shortMonthName</a></li>
155
-
156
- <li><a href="#method-i-to_ary">#to_ary</a></li>
157
-
158
- <li><a href="#method-i-to_i">#to_i</a></li>
159
-
160
- <li><a href="#method-i-to_s">#to_s</a></li>
161
-
162
- <li><a href="#method-i-upto">#upto</a></li>
163
-
164
- <li><a href="#method-i-week">#week</a></li>
165
-
166
- <li><a href="#method-i-weekdayAndDate">#weekdayAndDate</a></li>
167
-
168
- <li><a href="#method-i-weeksTo">#weeksTo</a></li>
169
-
170
- <li><a href="#method-i-yearsTo">#yearsTo</a></li>
171
-
172
- </ul>
173
- </div>
174
-
175
-
176
- <!-- Included Modules -->
177
-
178
- </div>
179
-
180
- <div id="project-metadata">
181
-
182
-
183
- <div id="fileindex-section" class="section project-section">
184
- <h3 class="section-header">Files</h3>
185
- <ul>
186
-
187
- <li class="file"><a href="../CHANGELOG.html">CHANGELOG</a></li>
188
-
189
- <li class="file"><a href="../COPYING.html">COPYING</a></li>
190
-
191
- <li class="file"><a href="../README.html">README</a></li>
192
-
193
- </ul>
194
- </div>
195
-
196
-
197
- <div id="classindex-section" class="section project-section">
198
- <h3 class="section-header">Class Index
199
- <span class="search-toggle"><img src="../images/find.png"
200
- height="16" width="16" alt="[+]"
201
- title="show/hide quicksearch" /></span></h3>
202
- <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
203
- <fieldset>
204
- <legend>Quicksearch</legend>
205
- <input type="text" name="quicksearch" value=""
206
- class="quicksearch-field" />
207
- </fieldset>
208
- </form>
209
-
210
- <ul class="link-list">
211
-
212
- <li><a href="../TaskJuggler.html">TaskJuggler</a></li>
213
-
214
- <li><a href="../TaskJuggler/Account.html">TaskJuggler::Account</a></li>
215
-
216
- <li><a href="../TaskJuggler/AccountAttribute.html">TaskJuggler::AccountAttribute</a></li>
217
-
218
- <li><a href="../TaskJuggler/AccountScenario.html">TaskJuggler::AccountScenario</a></li>
219
-
220
- <li><a href="../TaskJuggler/Allocation.html">TaskJuggler::Allocation</a></li>
221
-
222
- <li><a href="../TaskJuggler/AllocationAttribute.html">TaskJuggler::AllocationAttribute</a></li>
223
-
224
- <li><a href="../TaskJuggler/AttributeBase.html">TaskJuggler::AttributeBase</a></li>
225
-
226
- <li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
227
-
228
- <li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
229
-
230
- <li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
231
-
232
- <li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
233
-
234
- <li><a href="../TaskJuggler/BookingListAttribute.html">TaskJuggler::BookingListAttribute</a></li>
235
-
236
- <li><a href="../TaskJuggler/BooleanAttribute.html">TaskJuggler::BooleanAttribute</a></li>
237
-
238
- <li><a href="../TaskJuggler/CSVFile.html">TaskJuggler::CSVFile</a></li>
239
-
240
- <li><a href="../TaskJuggler/CellSettingPattern.html">TaskJuggler::CellSettingPattern</a></li>
241
-
242
- <li><a href="../TaskJuggler/CellSettingPatternList.html">TaskJuggler::CellSettingPatternList</a></li>
243
-
244
- <li><a href="../TaskJuggler/Charge.html">TaskJuggler::Charge</a></li>
245
-
246
- <li><a href="../TaskJuggler/ChargeListAttribute.html">TaskJuggler::ChargeListAttribute</a></li>
247
-
248
- <li><a href="../TaskJuggler/ChargeSet.html">TaskJuggler::ChargeSet</a></li>
249
-
250
- <li><a href="../TaskJuggler/ChargeSetListAttribute.html">TaskJuggler::ChargeSetListAttribute</a></li>
251
-
252
- <li><a href="../TaskJuggler/CollisionDetector.html">TaskJuggler::CollisionDetector</a></li>
253
-
254
- <li><a href="../TaskJuggler/ColumnListAttribute.html">TaskJuggler::ColumnListAttribute</a></li>
255
-
256
- <li><a href="../TaskJuggler/ColumnTable.html">TaskJuggler::ColumnTable</a></li>
257
-
258
- <li><a href="../TaskJuggler/Daemon.html">TaskJuggler::Daemon</a></li>
259
-
260
- <li><a href="../TaskJuggler/DataCache.html">TaskJuggler::DataCache</a></li>
261
-
262
- <li><a href="../TaskJuggler/DataCacheEntry.html">TaskJuggler::DataCacheEntry</a></li>
263
-
264
- <li><a href="../TaskJuggler/DateAttribute.html">TaskJuggler::DateAttribute</a></li>
265
-
266
- <li><a href="../TaskJuggler/DefinitionListAttribute.html">TaskJuggler::DefinitionListAttribute</a></li>
267
-
268
- <li><a href="../TaskJuggler/DependencyListAttribute.html">TaskJuggler::DependencyListAttribute</a></li>
269
-
270
- <li><a href="../TaskJuggler/DurationAttribute.html">TaskJuggler::DurationAttribute</a></li>
271
-
272
- <li><a href="../TaskJuggler/FileList.html">TaskJuggler::FileList</a></li>
273
-
274
- <li><a href="../TaskJuggler/FileRecord.html">TaskJuggler::FileRecord</a></li>
275
-
276
- <li><a href="../TaskJuggler/FixnumAttribute.html">TaskJuggler::FixnumAttribute</a></li>
277
-
278
- <li><a href="../TaskJuggler/FlagListAttribute.html">TaskJuggler::FlagListAttribute</a></li>
279
-
280
- <li><a href="../TaskJuggler/FloatAttribute.html">TaskJuggler::FloatAttribute</a></li>
281
-
282
- <li><a href="../TaskJuggler/FormatListAttribute.html">TaskJuggler::FormatListAttribute</a></li>
283
-
284
- <li><a href="../TaskJuggler/GanttChart.html">TaskJuggler::GanttChart</a></li>
285
-
286
- <li><a href="../TaskJuggler/GanttContainer.html">TaskJuggler::GanttContainer</a></li>
287
-
288
- <li><a href="../TaskJuggler/GanttHeader.html">TaskJuggler::GanttHeader</a></li>
289
-
290
- <li><a href="../TaskJuggler/GanttHeaderScaleItem.html">TaskJuggler::GanttHeaderScaleItem</a></li>
291
-
292
- <li><a href="../TaskJuggler/GanttLine.html">TaskJuggler::GanttLine</a></li>
293
-
294
- <li><a href="../TaskJuggler/GanttLoadStack.html">TaskJuggler::GanttLoadStack</a></li>
295
-
296
- <li><a href="../TaskJuggler/GanttMilestone.html">TaskJuggler::GanttMilestone</a></li>
297
-
298
- <li><a href="../TaskJuggler/GanttRouter.html">TaskJuggler::GanttRouter</a></li>
299
-
300
- <li><a href="../TaskJuggler/GanttTaskBar.html">TaskJuggler::GanttTaskBar</a></li>
301
-
302
- <li><a href="../TaskJuggler/HTMLDocument.html">TaskJuggler::HTMLDocument</a></li>
303
-
304
- <li><a href="../TaskJuggler/HTMLGraphics.html">TaskJuggler::HTMLGraphics</a></li>
305
-
306
- <li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
307
-
308
- <li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
309
-
310
- <li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
311
-
312
- <li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
313
-
314
- <li><a href="../TaskJuggler/Journal.html">TaskJuggler::Journal</a></li>
315
-
316
- <li><a href="../TaskJuggler/JournalEntry.html">TaskJuggler::JournalEntry</a></li>
317
-
318
- <li><a href="../TaskJuggler/JournalEntryList.html">TaskJuggler::JournalEntryList</a></li>
319
-
320
- <li><a href="../TaskJuggler/KeywordArray.html">TaskJuggler::KeywordArray</a></li>
321
-
322
- <li><a href="../TaskJuggler/KeywordDocumentation.html">TaskJuggler::KeywordDocumentation</a></li>
323
-
324
- <li><a href="../TaskJuggler/Limits.html">TaskJuggler::Limits</a></li>
325
-
326
- <li><a href="../TaskJuggler/Limits/Limit.html">TaskJuggler::Limits::Limit</a></li>
327
-
328
- <li><a href="../TaskJuggler/LimitsAttribute.html">TaskJuggler::LimitsAttribute</a></li>
329
-
330
- <li><a href="../TaskJuggler/ListAttributeBase.html">TaskJuggler::ListAttributeBase</a></li>
331
-
332
- <li><a href="../TaskJuggler/Log.html">TaskJuggler::Log</a></li>
333
-
334
- <li><a href="../TaskJuggler/LogFile.html">TaskJuggler::LogFile</a></li>
335
-
336
- <li><a href="../TaskJuggler/LogicalAttribute.html">TaskJuggler::LogicalAttribute</a></li>
337
-
338
- <li><a href="../TaskJuggler/LogicalExpression.html">TaskJuggler::LogicalExpression</a></li>
339
-
340
- <li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
341
-
342
- <li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
343
-
344
- <li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
345
-
346
- <li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
347
-
348
- <li><a href="../TaskJuggler/LogicalOperation.html">TaskJuggler::LogicalOperation</a></li>
349
-
350
- <li><a href="../TaskJuggler/Macro.html">TaskJuggler::Macro</a></li>
351
-
352
- <li><a href="../TaskJuggler/MacroTable.html">TaskJuggler::MacroTable</a></li>
353
-
354
- <li><a href="../TaskJuggler/ManagerResponsibilities.html">TaskJuggler::ManagerResponsibilities</a></li>
355
-
356
- <li><a href="../TaskJuggler/ManagerStatusRecord.html">TaskJuggler::ManagerStatusRecord</a></li>
357
-
358
- <li><a href="../TaskJuggler/Message.html">TaskJuggler::Message</a></li>
359
-
360
- <li><a href="../TaskJuggler/MessageHandler.html">TaskJuggler::MessageHandler</a></li>
361
-
362
- <li><a href="../TaskJuggler/Navigator.html">TaskJuggler::Navigator</a></li>
363
-
364
- <li><a href="../TaskJuggler/NavigatorElement.html">TaskJuggler::NavigatorElement</a></li>
365
-
366
- <li><a href="../TaskJuggler/NikuProject.html">TaskJuggler::NikuProject</a></li>
367
-
368
- <li><a href="../TaskJuggler/NikuReport.html">TaskJuggler::NikuReport</a></li>
369
-
370
- <li><a href="../TaskJuggler/NikuResource.html">TaskJuggler::NikuResource</a></li>
371
-
372
- <li><a href="../TaskJuggler/NodeListAttribute.html">TaskJuggler::NodeListAttribute</a></li>
373
-
374
- <li><a href="../TaskJuggler/PlaceHolderCell.html">TaskJuggler::PlaceHolderCell</a></li>
375
-
376
- <li><a href="../TaskJuggler/ProcessIntercom.html">TaskJuggler::ProcessIntercom</a></li>
377
-
378
- <li><a href="../TaskJuggler/ProcessIntercomIface.html">TaskJuggler::ProcessIntercomIface</a></li>
379
-
380
- <li><a href="../TaskJuggler/Project.html">TaskJuggler::Project</a></li>
381
-
382
- <li><a href="../TaskJuggler/ProjectBroker.html">TaskJuggler::ProjectBroker</a></li>
383
-
384
- <li><a href="../TaskJuggler/ProjectBrokerIface.html">TaskJuggler::ProjectBrokerIface</a></li>
385
-
386
- <li><a href="../TaskJuggler/ProjectFileParser.html">TaskJuggler::ProjectFileParser</a></li>
387
-
388
- <li><a href="../TaskJuggler/ProjectFileScanner.html">TaskJuggler::ProjectFileScanner</a></li>
389
-
390
- <li><a href="../TaskJuggler/ProjectRecord.html">TaskJuggler::ProjectRecord</a></li>
391
-
392
- <li><a href="../TaskJuggler/ProjectServer.html">TaskJuggler::ProjectServer</a></li>
393
-
394
- <li><a href="../TaskJuggler/ProjectServerIface.html">TaskJuggler::ProjectServerIface</a></li>
395
-
396
- <li><a href="../TaskJuggler/PropertyAttribute.html">TaskJuggler::PropertyAttribute</a></li>
397
-
398
- <li><a href="../TaskJuggler/PropertyList.html">TaskJuggler::PropertyList</a></li>
399
-
400
- <li><a href="../TaskJuggler/PropertySet.html">TaskJuggler::PropertySet</a></li>
401
-
402
- <li><a href="../TaskJuggler/PropertyTreeNode.html">TaskJuggler::PropertyTreeNode</a></li>
403
-
404
- <li><a href="../TaskJuggler/Query.html">TaskJuggler::Query</a></li>
405
-
406
- <li><a href="../TaskJuggler/RTFHandlers.html">TaskJuggler::RTFHandlers</a></li>
407
-
408
- <li><a href="../TaskJuggler/RTFNavigator.html">TaskJuggler::RTFNavigator</a></li>
409
-
410
- <li><a href="../TaskJuggler/RTFQuery.html">TaskJuggler::RTFQuery</a></li>
411
-
412
- <li><a href="../TaskJuggler/RTFReport.html">TaskJuggler::RTFReport</a></li>
413
-
414
- <li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
415
-
416
- <li><a href="../TaskJuggler/RTFWithQuerySupport.html">TaskJuggler::RTFWithQuerySupport</a></li>
417
-
418
- <li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
419
-
420
- <li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
421
-
422
- <li><a href="../TaskJuggler/ReferenceAttribute.html">TaskJuggler::ReferenceAttribute</a></li>
423
-
424
- <li><a href="../TaskJuggler/Report.html">TaskJuggler::Report</a></li>
425
-
426
- <li><a href="../TaskJuggler/ReportBase.html">TaskJuggler::ReportBase</a></li>
427
-
428
- <li><a href="../TaskJuggler/ReportContext.html">TaskJuggler::ReportContext</a></li>
429
-
430
- <li><a href="../TaskJuggler/ReportServer.html">TaskJuggler::ReportServer</a></li>
431
-
432
- <li><a href="../TaskJuggler/ReportServerIface.html">TaskJuggler::ReportServerIface</a></li>
433
-
434
- <li><a href="../TaskJuggler/ReportServerRecord.html">TaskJuggler::ReportServerRecord</a></li>
435
-
436
- <li><a href="../TaskJuggler/ReportServlet.html">TaskJuggler::ReportServlet</a></li>
437
-
438
- <li><a href="../TaskJuggler/ReportTable.html">TaskJuggler::ReportTable</a></li>
439
-
440
- <li><a href="../TaskJuggler/ReportTableCell.html">TaskJuggler::ReportTableCell</a></li>
441
-
442
- <li><a href="../TaskJuggler/ReportTableColumn.html">TaskJuggler::ReportTableColumn</a></li>
443
-
444
- <li><a href="../TaskJuggler/ReportTableLegend.html">TaskJuggler::ReportTableLegend</a></li>
445
-
446
- <li><a href="../TaskJuggler/ReportTableLine.html">TaskJuggler::ReportTableLine</a></li>
447
-
448
- <li><a href="../TaskJuggler/Resource.html">TaskJuggler::Resource</a></li>
449
-
450
- <li><a href="../TaskJuggler/ResourceListAttribute.html">TaskJuggler::ResourceListAttribute</a></li>
451
-
452
- <li><a href="../TaskJuggler/ResourceListRE.html">TaskJuggler::ResourceListRE</a></li>
453
-
454
- <li><a href="../TaskJuggler/ResourceScenario.html">TaskJuggler::ResourceScenario</a></li>
455
-
456
- <li><a href="../TaskJuggler/RichText.html">TaskJuggler::RichText</a></li>
457
-
458
- <li><a href="../TaskJuggler/RichTextAttribute.html">TaskJuggler::RichTextAttribute</a></li>
459
-
460
- <li><a href="../TaskJuggler/RichTextDocument.html">TaskJuggler::RichTextDocument</a></li>
461
-
462
- <li><a href="../TaskJuggler/RichTextElement.html">TaskJuggler::RichTextElement</a></li>
463
-
464
- <li><a href="../TaskJuggler/RichTextFunctionExample.html">TaskJuggler::RichTextFunctionExample</a></li>
465
-
466
- <li><a href="../TaskJuggler/RichTextFunctionHandler.html">TaskJuggler::RichTextFunctionHandler</a></li>
467
-
468
- <li><a href="../TaskJuggler/RichTextImage.html">TaskJuggler::RichTextImage</a></li>
469
-
470
- <li><a href="../TaskJuggler/RichTextIntermediate.html">TaskJuggler::RichTextIntermediate</a></li>
471
-
472
- <li><a href="../TaskJuggler/RichTextParser.html">TaskJuggler::RichTextParser</a></li>
473
-
474
- <li><a href="../TaskJuggler/RichTextScanner.html">TaskJuggler::RichTextScanner</a></li>
475
-
476
- <li><a href="../TaskJuggler/RichTextSnip.html">TaskJuggler::RichTextSnip</a></li>
477
-
478
- <li><a href="../TaskJuggler/RichTextSyntaxRules.html">TaskJuggler::RichTextSyntaxRules</a></li>
479
-
480
- <li><a href="../TaskJuggler/Scenario.html">TaskJuggler::Scenario</a></li>
481
-
482
- <li><a href="../TaskJuggler/ScenarioData.html">TaskJuggler::ScenarioData</a></li>
483
-
484
- <li><a href="../TaskJuggler/ScenarioListAttribute.html">TaskJuggler::ScenarioListAttribute</a></li>
485
-
486
- <li><a href="../TaskJuggler/Scoreboard.html">TaskJuggler::Scoreboard</a></li>
487
-
488
- <li><a href="../TaskJuggler/SheetHandlerBase.html">TaskJuggler::SheetHandlerBase</a></li>
489
-
490
- <li><a href="../TaskJuggler/SheetReceiver.html">TaskJuggler::SheetReceiver</a></li>
491
-
492
- <li><a href="../TaskJuggler/SheetSender.html">TaskJuggler::SheetSender</a></li>
493
-
494
- <li><a href="../TaskJuggler/Shift.html">TaskJuggler::Shift</a></li>
495
-
496
- <li><a href="../TaskJuggler/ShiftAssignment.html">TaskJuggler::ShiftAssignment</a></li>
497
-
498
- <li><a href="../TaskJuggler/ShiftAssignments.html">TaskJuggler::ShiftAssignments</a></li>
499
-
500
- <li><a href="../TaskJuggler/ShiftAssignmentsAttribute.html">TaskJuggler::ShiftAssignmentsAttribute</a></li>
501
-
502
- <li><a href="../TaskJuggler/ShiftScenario.html">TaskJuggler::ShiftScenario</a></li>
503
-
504
- <li><a href="../TaskJuggler/SimpleQueryExpander.html">TaskJuggler::SimpleQueryExpander</a></li>
505
-
506
- <li><a href="../TaskJuggler/SortListAttribute.html">TaskJuggler::SortListAttribute</a></li>
507
-
508
- <li><a href="../TaskJuggler/SourceFileInfo.html">TaskJuggler::SourceFileInfo</a></li>
509
-
510
- <li><a href="../TaskJuggler/StatusSheetReceiver.html">TaskJuggler::StatusSheetReceiver</a></li>
511
-
512
- <li><a href="../TaskJuggler/StatusSheetReport.html">TaskJuggler::StatusSheetReport</a></li>
513
-
514
- <li><a href="../TaskJuggler/StatusSheetSender.html">TaskJuggler::StatusSheetSender</a></li>
515
-
516
- <li><a href="../TaskJuggler/StringAttribute.html">TaskJuggler::StringAttribute</a></li>
517
-
518
- <li><a href="../TaskJuggler/SymbolAttribute.html">TaskJuggler::SymbolAttribute</a></li>
519
-
520
- <li><a href="../TaskJuggler/SyntaxReference.html">TaskJuggler::SyntaxReference</a></li>
521
-
522
- <li><a href="../TaskJuggler/TOCEntry.html">TaskJuggler::TOCEntry</a></li>
523
-
524
- <li><a href="../TaskJuggler/TSResourceRecord.html">TaskJuggler::TSResourceRecord</a></li>
525
-
526
- <li><a href="../TaskJuggler/TSTaskRecord.html">TaskJuggler::TSTaskRecord</a></li>
527
-
528
- <li><a href="../TaskJuggler/TableColumnDefinition.html">TaskJuggler::TableColumnDefinition</a></li>
529
-
530
- <li><a href="../TaskJuggler/TableOfContents.html">TaskJuggler::TableOfContents</a></li>
531
-
532
- <li><a href="../TaskJuggler/TableReport.html">TaskJuggler::TableReport</a></li>
533
-
534
- <li><a href="../TaskJuggler/Task.html">TaskJuggler::Task</a></li>
535
-
536
- <li><a href="../TaskJuggler/TaskDependency.html">TaskJuggler::TaskDependency</a></li>
537
-
538
- <li><a href="../TaskJuggler/TaskListAttribute.html">TaskJuggler::TaskListAttribute</a></li>
539
-
540
- <li><a href="../TaskJuggler/TaskListRE.html">TaskJuggler::TaskListRE</a></li>
541
-
542
- <li><a href="../TaskJuggler/TaskScenario.html">TaskJuggler::TaskScenario</a></li>
543
-
544
- <li><a href="../TaskJuggler/TextFormatter.html">TaskJuggler::TextFormatter</a></li>
545
-
546
- <li><a href="../TaskJuggler/TextParser.html">TaskJuggler::TextParser</a></li>
547
-
548
- <li><a href="../TaskJuggler/TextParser/Pattern.html">TaskJuggler::TextParser::Pattern</a></li>
549
-
550
- <li><a href="../TaskJuggler/TextParser/Rule.html">TaskJuggler::TextParser::Rule</a></li>
551
-
552
- <li><a href="../TaskJuggler/TextParser/StackElement.html">TaskJuggler::TextParser::StackElement</a></li>
553
-
554
- <li><a href="../TaskJuggler/TextParser/State.html">TaskJuggler::TextParser::State</a></li>
555
-
556
- <li><a href="../TaskJuggler/TextParser/StateTransition.html">TaskJuggler::TextParser::StateTransition</a></li>
557
-
558
- <li><a href="../TaskJuggler/TextParser/TextParserResultArray.html">TaskJuggler::TextParser::TextParserResultArray</a></li>
559
-
560
- <li><a href="../TaskJuggler/TextParser/TokenDoc.html">TaskJuggler::TextParser::TokenDoc</a></li>
561
-
562
- <li><a href="../TaskJuggler/TextReport.html">TaskJuggler::TextReport</a></li>
563
-
564
- <li><a href="../TaskJuggler/TextScanner.html">TaskJuggler::TextScanner</a></li>
565
-
566
- <li><a href="../TaskJuggler/TextScanner/BufferStreamHandle.html">TaskJuggler::TextScanner::BufferStreamHandle</a></li>
567
-
568
- <li><a href="../TaskJuggler/TextScanner/FileStreamHandle.html">TaskJuggler::TextScanner::FileStreamHandle</a></li>
569
-
570
- <li><a href="../TaskJuggler/TextScanner/MacroStackEntry.html">TaskJuggler::TextScanner::MacroStackEntry</a></li>
571
-
572
- <li><a href="../TaskJuggler/TextScanner/StreamHandle.html">TaskJuggler::TextScanner::StreamHandle</a></li>
573
-
574
- <li><a href="../TaskJuggler/TimeSheet.html">TaskJuggler::TimeSheet</a></li>
575
-
576
- <li><a href="../TaskJuggler/TimeSheetReceiver.html">TaskJuggler::TimeSheetReceiver</a></li>
577
-
578
- <li><a href="../TaskJuggler/TimeSheetRecord.html">TaskJuggler::TimeSheetRecord</a></li>
579
-
580
- <li><a href="../TaskJuggler/TimeSheetReport.html">TaskJuggler::TimeSheetReport</a></li>
581
-
582
- <li><a href="../TaskJuggler/TimeSheetSender.html">TaskJuggler::TimeSheetSender</a></li>
583
-
584
- <li><a href="../TaskJuggler/TimeSheetSummary.html">TaskJuggler::TimeSheetSummary</a></li>
585
-
586
- <li><a href="../TaskJuggler/TimeSheets.html">TaskJuggler::TimeSheets</a></li>
587
-
588
- <li><a href="../TaskJuggler/Tj3AppBase.html">TaskJuggler::Tj3AppBase</a></li>
589
-
590
- <li><a href="../TaskJuggler/Tj3Client.html">TaskJuggler::Tj3Client</a></li>
591
-
592
- <li><a href="../TaskJuggler/Tj3Daemon.html">TaskJuggler::Tj3Daemon</a></li>
593
-
594
- <li><a href="../TaskJuggler/Tj3SheetAppBase.html">TaskJuggler::Tj3SheetAppBase</a></li>
595
-
596
- <li><a href="../TaskJuggler/Tj3SsReceiver.html">TaskJuggler::Tj3SsReceiver</a></li>
597
-
598
- <li><a href="../TaskJuggler/Tj3SsSender.html">TaskJuggler::Tj3SsSender</a></li>
599
-
600
- <li><a href="../TaskJuggler/Tj3TsReceiver.html">TaskJuggler::Tj3TsReceiver</a></li>
601
-
602
- <li><a href="../TaskJuggler/Tj3TsSender.html">TaskJuggler::Tj3TsSender</a></li>
603
-
604
- <li><a href="../TaskJuggler/Tj3TsSummary.html">TaskJuggler::Tj3TsSummary</a></li>
605
-
606
- <li><a href="../TaskJuggler/TjException.html">TaskJuggler::TjException</a></li>
607
-
608
- <li><a href="../TaskJuggler/TjTime.html">TaskJuggler::TjTime</a></li>
609
-
610
- <li><a href="../TaskJuggler/TjpExample.html">TaskJuggler::TjpExample</a></li>
611
-
612
- <li><a href="../TaskJuggler/TjpExportRE.html">TaskJuggler::TjpExportRE</a></li>
613
-
614
- <li><a href="../TaskJuggler/TjpSyntaxRules.html">TaskJuggler::TjpSyntaxRules</a></li>
615
-
616
- <li><a href="../TaskJuggler/URLParameter.html">TaskJuggler::URLParameter</a></li>
617
-
618
- <li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
619
-
620
- <li><a href="../TaskJuggler/VimSyntax.html">TaskJuggler::VimSyntax</a></li>
621
-
622
- <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
623
-
624
- <li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
625
-
626
- <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
627
-
628
- <li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
629
-
630
- <li><a href="../TaskJuggler/XMLBlob.html">TaskJuggler::XMLBlob</a></li>
631
-
632
- <li><a href="../TaskJuggler/XMLComment.html">TaskJuggler::XMLComment</a></li>
633
-
634
- <li><a href="../TaskJuggler/XMLDocument.html">TaskJuggler::XMLDocument</a></li>
635
-
636
- <li><a href="../TaskJuggler/XMLElement.html">TaskJuggler::XMLElement</a></li>
637
-
638
- <li><a href="../TaskJuggler/XMLNamedText.html">TaskJuggler::XMLNamedText</a></li>
639
-
640
- <li><a href="../TaskJuggler/XMLText.html">TaskJuggler::XMLText</a></li>
641
-
642
- <li><a href="../AppConfig.html">AppConfig</a></li>
643
-
644
- <li><a href="../Arguments.html">Arguments</a></li>
645
-
646
- <li><a href="../Object.html">Object</a></li>
647
-
648
- <li><a href="../RuntimeConfig.html">RuntimeConfig</a></li>
649
-
650
- <li><a href="../String.html">String</a></li>
651
-
652
- </ul>
653
- <div id="no-class-search-results" style="display: none;">No matching classes.</div>
654
- </div>
655
-
656
-
657
- </div>
658
- </div>
659
-
660
- <div id="documentation">
661
- <h1 class="class">TaskJuggler::TjTime</h1>
662
-
663
- <div id="description">
664
- <p>
665
- The <a href="TjTime.html">TjTime</a> class is based on the original Ruby
666
- class Time but provides lots of additional functionality.
667
- </p>
668
-
669
- </div>
670
-
671
- <!-- Constants -->
672
-
673
- <div id="constants-list" class="section">
674
- <h3 class="section-header">Constants</h3>
675
- <dl>
676
-
677
- <dt><a name="MON_MAX">MON_MAX</a></dt>
678
-
679
- <dd class="description"><p>
680
- The number of days per month. Leap years are taken care of separately.
681
- </p></dd>
682
-
683
-
684
- </dl>
685
- </div>
686
-
687
-
688
- <!-- Attributes -->
689
-
690
- <div id="attribute-method-details" class="method-section section">
691
- <h3 class="section-header">Attributes</h3>
692
-
693
-
694
- <div id="time-attribute-method" class="method-detail">
695
- <a name="time"></a>
696
-
697
- <div class="method-heading attribute-method-heading">
698
- <span class="method-name">time</span><span
699
- class="attribute-access-type">[R]</span>
700
- </div>
701
-
702
- <div class="method-description">
703
-
704
-
705
-
706
- </div>
707
- </div>
708
-
709
- </div>
710
-
711
-
712
- <!-- Methods -->
713
-
714
- <div id="public-class-method-details" class="method-section section">
715
- <h3 class="section-header">Public Class Methods</h3>
716
-
717
-
718
- <div id="check-ime-one-method" class="method-detail ">
719
- <a name="method-c-checkTimeZone"></a>
720
-
721
- <div class="method-heading">
722
-
723
- <span class="method-name">checkTimeZone</span><span
724
- class="method-args">(zone)</span>
725
- <span class="method-click-advice">click to toggle source</span>
726
-
727
- </div>
728
-
729
- <div class="method-description">
730
-
731
- <p>
732
- Check if <tt>zone</tt> is a valid time zone.
733
- </p>
734
-
735
-
736
-
737
- <div class="method-source-code"
738
- id="check-ime-one-source">
739
- <pre>
740
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 169</span>
741
- 169: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">checkTimeZone</span>(<span class="ruby-identifier">zone</span>)
742
- 170: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">zone</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'UTC'</span>
743
- 171:
744
- 172: <span class="ruby-comment cmt"># Valid time zones must be of the form 'Region/City'</span>
745
- 173: <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">zone</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'/'</span>)
746
- 174:
747
- 175: <span class="ruby-comment cmt"># Save curent value of TZ</span>
748
- 176: <span class="ruby-identifier">tz</span> = <span class="ruby-constant">ENV</span>[<span class="ruby-value str">'TZ'</span>]
749
- 177: <span class="ruby-constant">ENV</span>[<span class="ruby-value str">'TZ'</span>] = <span class="ruby-identifier">zone</span>
750
- 178: <span class="ruby-identifier">newZone</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">new</span>.<span class="ruby-identifier">zone</span>
751
- 179: <span class="ruby-comment cmt"># If the time zone is valid, the OS can convert a zone like</span>
752
- 180: <span class="ruby-comment cmt"># 'America/Denver' into 'MST'. Unknown time zones are either not</span>
753
- 181: <span class="ruby-comment cmt"># converted or cause a fallback to UTC.</span>
754
- 182: <span class="ruby-comment cmt"># Since glibc 2.10 Time.new.zone only return the region for illegal</span>
755
- 183: <span class="ruby-comment cmt"># zones instead of the full zone string like it does on earlier</span>
756
- 184: <span class="ruby-comment cmt"># versions.</span>
757
- 185: <span class="ruby-identifier">region</span> = <span class="ruby-identifier">zone</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-identifier">zone</span>.<span class="ruby-identifier">index</span>(<span class="ruby-value str">'/'</span>) <span class="ruby-operator">-</span> <span class="ruby-value">1</span>]
758
- 186: <span class="ruby-identifier">res</span> = (<span class="ruby-identifier">newZone</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">zone</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">newZone</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">region</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">newZone</span> <span class="ruby-operator">!=</span> <span class="ruby-value str">'UTC'</span>)
759
- 187: <span class="ruby-comment cmt"># Restore TZ if it was set earlier.</span>
760
- 188: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tz</span>
761
- 189: <span class="ruby-constant">ENV</span>[<span class="ruby-value str">'TZ'</span>] = <span class="ruby-identifier">tz</span>
762
- 190: <span class="ruby-keyword kw">else</span>
763
- 191: <span class="ruby-constant">ENV</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value str">'TZ'</span>)
764
- 192: <span class="ruby-keyword kw">end</span>
765
- 193: <span class="ruby-identifier">res</span>
766
- 194: <span class="ruby-keyword kw">end</span></pre>
767
- </div>
768
-
769
- </div>
770
-
771
-
772
-
773
-
774
- </div>
775
-
776
-
777
- <div id="gm-method" class="method-detail ">
778
- <a name="method-c-gm"></a>
779
-
780
- <div class="method-heading">
781
-
782
- <span class="method-name">gm</span><span
783
- class="method-args">(*args)</span>
784
- <span class="method-click-advice">click to toggle source</span>
785
-
786
- </div>
787
-
788
- <div class="method-description">
789
-
790
- <p>
791
- Creates a time based on given values, interpreted as UTC. See Time.gm() for
792
- details.
793
- </p>
794
-
795
-
796
-
797
- <div class="method-source-code"
798
- id="gm-source">
799
- <pre>
800
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 53</span>
801
- 53: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">gm</span>(*<span class="ruby-identifier">args</span>)
802
- 54: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">gm</span>(*<span class="ruby-identifier">args</span>))
803
- 55: <span class="ruby-keyword kw">end</span></pre>
804
- </div>
805
-
806
- </div>
807
-
808
-
809
-
810
-
811
- </div>
812
-
813
-
814
- <div id="local-method" class="method-detail ">
815
- <a name="method-c-local"></a>
816
-
817
- <div class="method-heading">
818
-
819
- <span class="method-name">local</span><span
820
- class="method-args">(*args)</span>
821
- <span class="method-click-advice">click to toggle source</span>
822
-
823
- </div>
824
-
825
- <div class="method-description">
826
-
827
- <p>
828
- Creates a time based on given values, interpreted as local time. The result
829
- is stored as UTC time, though. See Time.local() for details.
830
- </p>
831
-
832
-
833
-
834
- <div class="method-source-code"
835
- id="local-source">
836
- <pre>
837
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 59</span>
838
- 59: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">local</span>(*<span class="ruby-identifier">args</span>)
839
- 60: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">local</span>(*<span class="ruby-identifier">args</span>).<span class="ruby-identifier">gmtime</span>)
840
- 61: <span class="ruby-keyword kw">end</span></pre>
841
- </div>
842
-
843
- </div>
844
-
845
-
846
-
847
-
848
- </div>
849
-
850
-
851
- <div id="new-method" class="method-detail ">
852
- <a name="method-c-new"></a>
853
-
854
- <div class="method-heading">
855
-
856
- <span class="method-callseq">TjTime(time) &rarr; Scenario
857
- TjTime(s) &rarr; Scenario
858
- TjTime(secs) &rarr; Scenario</span>
859
- <span class="method-click-advice">click to toggle source</span>
860
-
861
- </div>
862
-
863
- <div class="method-description">
864
-
865
- <p>
866
- The constructor is overloaded and accepts 3 kinds of arguments. If
867
- <em>t</em> is a Time object this is just copied to the @time variable. If
868
- it&#8217;s a string, it is parsed as a date. Or else it is interpreted as
869
- seconds after Epoch.
870
- </p>
871
-
872
-
873
-
874
- <div class="method-source-code"
875
- id="new-source">
876
- <pre>
877
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 36</span>
878
- 36: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">t</span>)
879
- 37: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Time</span>)
880
- 38: <span class="ruby-ivar">@time</span> = <span class="ruby-identifier">t</span>
881
- 39: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">String</span>)
882
- 40: <span class="ruby-ivar">@time</span> = <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">t</span>).<span class="ruby-identifier">time</span>
883
- 41: <span class="ruby-keyword kw">else</span>
884
- 42: <span class="ruby-ivar">@time</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">at</span>(<span class="ruby-identifier">t</span>)
885
- 43: <span class="ruby-keyword kw">end</span>
886
- 44: <span class="ruby-keyword kw">end</span></pre>
887
- </div>
888
-
889
- </div>
890
-
891
-
892
-
893
-
894
- </div>
895
-
896
-
897
- <div id="now-method" class="method-detail ">
898
- <a name="method-c-now"></a>
899
-
900
- <div class="method-heading">
901
-
902
- <span class="method-name">now</span><span
903
- class="method-args">()</span>
904
- <span class="method-click-advice">click to toggle source</span>
905
-
906
- </div>
907
-
908
- <div class="method-description">
909
-
910
- <p>
911
- Returns the current UTC time as Time object.
912
- </p>
913
-
914
-
915
-
916
- <div class="method-source-code"
917
- id="now-source">
918
- <pre>
919
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 47</span>
920
- 47: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">now</span>
921
- 48: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>.<span class="ruby-identifier">gmtime</span>)
922
- 49: <span class="ruby-keyword kw">end</span></pre>
923
- </div>
924
-
925
- </div>
926
-
927
-
928
-
929
-
930
- </div>
931
-
932
-
933
- <div id="parse-method" class="method-detail ">
934
- <a name="method-c-parse"></a>
935
-
936
- <div class="method-heading">
937
-
938
- <span class="method-name">parse</span><span
939
- class="method-args">(t)</span>
940
- <span class="method-click-advice">click to toggle source</span>
941
-
942
- </div>
943
-
944
- <div class="method-description">
945
-
946
-
947
-
948
-
949
-
950
- <div class="method-source-code"
951
- id="parse-source">
952
- <pre>
953
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 63</span>
954
- 63: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">t</span>)
955
- 64: <span class="ruby-identifier">year</span>, <span class="ruby-identifier">month</span>, <span class="ruby-identifier">day</span>, <span class="ruby-identifier">time</span>, <span class="ruby-identifier">zone</span> = <span class="ruby-identifier">t</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">'-'</span>, <span class="ruby-value">5</span>)
956
- 65:
957
- 66: <span class="ruby-comment cmt"># Check the year</span>
958
- 67: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">year</span>
959
- 68: <span class="ruby-identifier">year</span> = <span class="ruby-identifier">year</span>.<span class="ruby-identifier">to_i</span>
960
- 69: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">year</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">1970</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">year</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">2035</span>
961
- 70: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Year #{year} out of range (1970 - 2035)&quot;</span>
962
- 71: <span class="ruby-keyword kw">end</span>
963
- 72: <span class="ruby-keyword kw">else</span>
964
- 73: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">&quot;Year not specified&quot;</span>
965
- 74: <span class="ruby-keyword kw">end</span>
966
- 75:
967
- 76: <span class="ruby-comment cmt"># Check the month</span>
968
- 77: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">month</span>
969
- 78: <span class="ruby-identifier">month</span> = <span class="ruby-identifier">month</span>.<span class="ruby-identifier">to_i</span>
970
- 79: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">month</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">1</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">month</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">12</span>
971
- 80: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Month #{month} out of range (1 - 12)&quot;</span>
972
- 81: <span class="ruby-keyword kw">end</span>
973
- 82: <span class="ruby-keyword kw">else</span>
974
- 83: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">&quot;Month not specified&quot;</span>
975
- 84: <span class="ruby-keyword kw">end</span>
976
- 85:
977
- 86: <span class="ruby-comment cmt"># Check the day</span>
978
- 87: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">day</span>
979
- 88: <span class="ruby-identifier">day</span> = <span class="ruby-identifier">day</span>.<span class="ruby-identifier">to_i</span>
980
- 89: <span class="ruby-identifier">maxDay</span> = [ <span class="ruby-value">0</span>, <span class="ruby-value">31</span>, <span class="ruby-constant">Date</span>.<span class="ruby-identifier">gregorian_leap?</span>(<span class="ruby-identifier">year</span>) <span class="ruby-operator">?</span> <span class="ruby-value">29</span> <span class="ruby-operator">:</span> <span class="ruby-value">28</span>, <span class="ruby-value">31</span>, <span class="ruby-value">30</span>, <span class="ruby-value">31</span>,
981
- 90: <span class="ruby-value">30</span>, <span class="ruby-value">31</span>, <span class="ruby-value">31</span>, <span class="ruby-value">30</span>, <span class="ruby-value">31</span>, <span class="ruby-value">30</span>, <span class="ruby-value">31</span> ]
982
- 91: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">month</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">1</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">month</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">maxDay</span>[<span class="ruby-identifier">month</span>]
983
- 92: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Day #{day} out of range (1 - #{maxDay[month]})&quot;</span>
984
- 93: <span class="ruby-keyword kw">end</span>
985
- 94: <span class="ruby-keyword kw">else</span>
986
- 95: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">&quot;Day not specified&quot;</span>
987
- 96: <span class="ruby-keyword kw">end</span>
988
- 97:
989
- 98: <span class="ruby-comment cmt"># The time is optional. Will be expanded to 00:00:00.</span>
990
- 99: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">time</span>
991
- 100: <span class="ruby-identifier">hour</span>, <span class="ruby-identifier">minute</span>, <span class="ruby-identifier">second</span> = <span class="ruby-identifier">time</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">':'</span>)
992
- 101:
993
- 102: <span class="ruby-comment cmt"># Check hour</span>
994
- 103: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">hour</span>
995
- 104: <span class="ruby-identifier">hour</span> = <span class="ruby-identifier">hour</span>.<span class="ruby-identifier">to_i</span>
996
- 105: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">hour</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">hour</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">23</span>
997
- 106: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Hour #{hour} out of range (0 - 23)&quot;</span>
998
- 107: <span class="ruby-keyword kw">end</span>
999
- 108: <span class="ruby-keyword kw">else</span>
1000
- 109: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">&quot;Hour not specified&quot;</span>
1001
- 110: <span class="ruby-keyword kw">end</span>
1002
- 111:
1003
- 112: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">minute</span>
1004
- 113: <span class="ruby-identifier">minute</span> = <span class="ruby-identifier">minute</span>.<span class="ruby-identifier">to_i</span>
1005
- 114: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">minute</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">minute</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">59</span>
1006
- 115: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Minute #{minute} out of range (0 - 59)&quot;</span>
1007
- 116: <span class="ruby-keyword kw">end</span>
1008
- 117: <span class="ruby-keyword kw">else</span>
1009
- 118: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">&quot;Minute not specified&quot;</span>
1010
- 119: <span class="ruby-keyword kw">end</span>
1011
- 120:
1012
- 121: <span class="ruby-comment cmt"># Check sencond. This value is optional and defaults to 0.</span>
1013
- 122: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">second</span>
1014
- 123: <span class="ruby-identifier">second</span> = <span class="ruby-identifier">second</span>.<span class="ruby-identifier">to_i</span>
1015
- 124: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">second</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">second</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">59</span>
1016
- 125: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Second #{second} out of range (0 - 59)&quot;</span>
1017
- 126: <span class="ruby-keyword kw">end</span>
1018
- 127: <span class="ruby-keyword kw">else</span>
1019
- 128: <span class="ruby-identifier">second</span> = <span class="ruby-value">0</span>
1020
- 129: <span class="ruby-keyword kw">end</span>
1021
- 130: <span class="ruby-keyword kw">else</span>
1022
- 131: <span class="ruby-identifier">hour</span> = <span class="ruby-identifier">minute</span> = <span class="ruby-identifier">second</span> = <span class="ruby-value">0</span>
1023
- 132: <span class="ruby-keyword kw">end</span>
1024
- 133:
1025
- 134: <span class="ruby-comment cmt"># The zone is optional and defaults to the current time zone.</span>
1026
- 135: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">zone</span>
1027
- 136: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">zone</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">!=</span> <span class="ruby-value">--</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">zone</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">!=</span> <span class="ruby-value">++</span>
1028
- 137: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">&quot;Time zone adjustment must be prefixed by &quot;</span> <span class="ruby-operator">+</span>
1029
- 138: <span class="ruby-node">&quot;+ or -, not #{zone[0]}&quot;</span>
1030
- 139: <span class="ruby-keyword kw">end</span>
1031
- 140: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">zone</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">!=</span> <span class="ruby-value">5</span>
1032
- 141: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">&quot;Time zone adjustment must use (+/-)HHMM format&quot;</span>
1033
- 142: <span class="ruby-keyword kw">end</span>
1034
- 143:
1035
- 144: <span class="ruby-identifier">date</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">utc</span>(<span class="ruby-identifier">year</span>, <span class="ruby-identifier">month</span>, <span class="ruby-identifier">day</span>, <span class="ruby-identifier">hour</span>, <span class="ruby-identifier">minute</span>, <span class="ruby-identifier">second</span>)
1036
- 145: <span class="ruby-identifier">sign</span> = <span class="ruby-identifier">zone</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-value">--</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">1</span>
1037
- 146: <span class="ruby-identifier">tzHour</span> = <span class="ruby-identifier">zone</span>[<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">2</span>].<span class="ruby-identifier">to_i</span>
1038
- 147: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tzHour</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">tzHour</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">12</span>
1039
- 148: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">&quot;Time zone adjustment hour out of range &quot;</span> <span class="ruby-operator">+</span>
1040
- 149: <span class="ruby-node">&quot;(0 - 12) but is #{tzHour}&quot;</span>
1041
- 150: <span class="ruby-keyword kw">end</span>
1042
- 151: <span class="ruby-identifier">tzMinute</span> = <span class="ruby-identifier">zone</span>[<span class="ruby-value">3</span><span class="ruby-operator">..</span><span class="ruby-value">4</span>].<span class="ruby-identifier">to_i</span>
1043
- 152: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tzMinute</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">tzMinute</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">59</span>
1044
- 153: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">&quot;Time zone adjustment minute out of range &quot;</span> <span class="ruby-operator">+</span>
1045
- 154: <span class="ruby-node">&quot;(0 - 59) but is #{tzMinute}&quot;</span>
1046
- 155: <span class="ruby-keyword kw">end</span>
1047
- 156: <span class="ruby-identifier">date</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">sign</span> * (<span class="ruby-identifier">tzHour</span> * <span class="ruby-value">3600</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">tzMinute</span> * <span class="ruby-value">60</span>)
1048
- 157: <span class="ruby-keyword kw">else</span>
1049
- 158: <span class="ruby-identifier">date</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">mktime</span>(<span class="ruby-identifier">year</span>, <span class="ruby-identifier">month</span>, <span class="ruby-identifier">day</span>, <span class="ruby-identifier">hour</span>, <span class="ruby-identifier">minute</span>, <span class="ruby-identifier">second</span>)
1050
- 159: <span class="ruby-keyword kw">end</span>
1051
- 160:
1052
- 161: <span class="ruby-comment cmt">#puts &quot;--&gt; #{t}&quot;</span>
1053
- 162: <span class="ruby-comment cmt">#puts(&quot;&gt;&gt;&gt; #{year}-#{month}-#{day}-#{hour}:#{minute}:#{second}&quot; +</span>
1054
- 163: <span class="ruby-comment cmt"># &quot;#{zone ? &quot;-#{tzHour}:#{tzMinute}&quot; : &quot;&quot;}&quot;)</span>
1055
- 164: <span class="ruby-comment cmt">#puts &quot;=== #{date}&quot;</span>
1056
- 165: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">date</span>)
1057
- 166: <span class="ruby-keyword kw">end</span></pre>
1058
- </div>
1059
-
1060
- </div>
1061
-
1062
-
1063
-
1064
-
1065
- </div>
1066
-
1067
-
1068
- </div>
1069
-
1070
- <div id="public-instance-method-details" class="method-section section">
1071
- <h3 class="section-header">Public Instance Methods</h3>
1072
-
1073
-
1074
- <div id="--method" class="method-detail ">
1075
- <a name="method-i-%25"></a>
1076
-
1077
- <div class="method-heading">
1078
-
1079
- <span class="method-name">%</span><span
1080
- class="method-args">(val)</span>
1081
- <span class="method-click-advice">click to toggle source</span>
1082
-
1083
- </div>
1084
-
1085
- <div class="method-description">
1086
-
1087
- <p>
1088
- Convert the time to seconds since Epoch and return the module of
1089
- <em>val</em>.
1090
- </p>
1091
-
1092
-
1093
-
1094
- <div class="method-source-code"
1095
- id="--source">
1096
- <pre>
1097
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 224</span>
1098
- 224: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">%</span>(<span class="ruby-identifier">val</span>)
1099
- 225: <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">val</span>
1100
- 226: <span class="ruby-keyword kw">end</span></pre>
1101
- </div>
1102
-
1103
- </div>
1104
-
1105
-
1106
-
1107
-
1108
- </div>
1109
-
1110
-
1111
- <div id="--method" class="method-detail ">
1112
- <a name="method-i-%2B"></a>
1113
-
1114
- <div class="method-heading">
1115
-
1116
- <span class="method-name">+</span><span
1117
- class="method-args">(secs)</span>
1118
- <span class="method-click-advice">click to toggle source</span>
1119
-
1120
- </div>
1121
-
1122
- <div class="method-description">
1123
-
1124
- <p>
1125
- Add <em>secs</em> number of seconds to the time.
1126
- </p>
1127
-
1128
-
1129
-
1130
- <div class="method-source-code"
1131
- id="--source">
1132
- <pre>
1133
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 209</span>
1134
- 209: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">+</span>(<span class="ruby-identifier">secs</span>)
1135
- 210: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@time</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">secs</span>)
1136
- 211: <span class="ruby-keyword kw">end</span></pre>
1137
- </div>
1138
-
1139
- </div>
1140
-
1141
-
1142
-
1143
-
1144
- </div>
1145
-
1146
-
1147
- <div id="--method" class="method-detail ">
1148
- <a name="method-i--"></a>
1149
-
1150
- <div class="method-heading">
1151
-
1152
- <span class="method-name">-</span><span
1153
- class="method-args">(arg)</span>
1154
- <span class="method-click-advice">click to toggle source</span>
1155
-
1156
- </div>
1157
-
1158
- <div class="method-description">
1159
-
1160
- <p>
1161
- Substract <em>arg</em> number of seconds or return the number of seconds
1162
- between <em>arg</em> and this time.
1163
- </p>
1164
-
1165
-
1166
-
1167
- <div class="method-source-code"
1168
- id="--source">
1169
- <pre>
1170
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 215</span>
1171
- 215: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">-</span>(<span class="ruby-identifier">arg</span>)
1172
- 216: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">TjTime</span>)
1173
- 217: <span class="ruby-ivar">@time</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">time</span>
1174
- 218: <span class="ruby-keyword kw">else</span>
1175
- 219: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@time</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">arg</span>)
1176
- 220: <span class="ruby-keyword kw">end</span>
1177
- 221: <span class="ruby-keyword kw">end</span></pre>
1178
- </div>
1179
-
1180
- </div>
1181
-
1182
-
1183
-
1184
-
1185
- </div>
1186
-
1187
-
1188
- <div id="--method" class="method-detail ">
1189
- <a name="method-i-%3C"></a>
1190
-
1191
- <div class="method-heading">
1192
-
1193
- <span class="method-name">&lt;</span><span
1194
- class="method-args">(t)</span>
1195
- <span class="method-click-advice">click to toggle source</span>
1196
-
1197
- </div>
1198
-
1199
- <div class="method-description">
1200
-
1201
- <p>
1202
- Return true if time is smaller than <em>t</em>.
1203
- </p>
1204
-
1205
-
1206
-
1207
- <div class="method-source-code"
1208
- id="--source">
1209
- <pre>
1210
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 229</span>
1211
- 229: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;</span>(<span class="ruby-identifier">t</span>)
1212
- 230: <span class="ruby-ivar">@time</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">time</span>
1213
- 231: <span class="ruby-keyword kw">end</span></pre>
1214
- </div>
1215
-
1216
- </div>
1217
-
1218
-
1219
-
1220
-
1221
- </div>
1222
-
1223
-
1224
- <div id="--method" class="method-detail ">
1225
- <a name="method-i-%3C%3D"></a>
1226
-
1227
- <div class="method-heading">
1228
-
1229
- <span class="method-name">&lt;=</span><span
1230
- class="method-args">(t)</span>
1231
- <span class="method-click-advice">click to toggle source</span>
1232
-
1233
- </div>
1234
-
1235
- <div class="method-description">
1236
-
1237
- <p>
1238
- Return true if time is smaller or equal than <em>t</em>.
1239
- </p>
1240
-
1241
-
1242
-
1243
- <div class="method-source-code"
1244
- id="--source">
1245
- <pre>
1246
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 234</span>
1247
- 234: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;=</span>(<span class="ruby-identifier">t</span>)
1248
- 235: <span class="ruby-ivar">@time</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">time</span>
1249
- 236: <span class="ruby-keyword kw">end</span></pre>
1250
- </div>
1251
-
1252
- </div>
1253
-
1254
-
1255
-
1256
-
1257
- </div>
1258
-
1259
-
1260
- <div id="--method" class="method-detail ">
1261
- <a name="method-i-%3C%3D%3E"></a>
1262
-
1263
- <div class="method-heading">
1264
-
1265
- <span class="method-name">&lt;=&gt;</span><span
1266
- class="method-args">(t)</span>
1267
- <span class="method-click-advice">click to toggle source</span>
1268
-
1269
- </div>
1270
-
1271
- <div class="method-description">
1272
-
1273
- <p>
1274
- Coparison operator for time with another time <em>t</em>.
1275
- </p>
1276
-
1277
-
1278
-
1279
- <div class="method-source-code"
1280
- id="--source">
1281
- <pre>
1282
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 255</span>
1283
- 255: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;=&gt;</span>(<span class="ruby-identifier">t</span>)
1284
- 256: <span class="ruby-ivar">@time</span> <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">time</span>
1285
- 257: <span class="ruby-keyword kw">end</span></pre>
1286
- </div>
1287
-
1288
- </div>
1289
-
1290
-
1291
-
1292
-
1293
- </div>
1294
-
1295
-
1296
- <div id="--method" class="method-detail ">
1297
- <a name="method-i-%3D%3D"></a>
1298
-
1299
- <div class="method-heading">
1300
-
1301
- <span class="method-name">==</span><span
1302
- class="method-args">(t)</span>
1303
- <span class="method-click-advice">click to toggle source</span>
1304
-
1305
- </div>
1306
-
1307
- <div class="method-description">
1308
-
1309
- <p>
1310
- Return true if time and <em>t</em> are identical.
1311
- </p>
1312
-
1313
-
1314
-
1315
- <div class="method-source-code"
1316
- id="--source">
1317
- <pre>
1318
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 249</span>
1319
- 249: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">==</span>(<span class="ruby-identifier">t</span>)
1320
- 250: <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">t</span>.<span class="ruby-identifier">nil?</span>
1321
- 251: <span class="ruby-ivar">@time</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">time</span>
1322
- 252: <span class="ruby-keyword kw">end</span></pre>
1323
- </div>
1324
-
1325
- </div>
1326
-
1327
-
1328
-
1329
-
1330
- </div>
1331
-
1332
-
1333
- <div id="--method" class="method-detail ">
1334
- <a name="method-i-%3E"></a>
1335
-
1336
- <div class="method-heading">
1337
-
1338
- <span class="method-name">&gt;</span><span
1339
- class="method-args">(t)</span>
1340
- <span class="method-click-advice">click to toggle source</span>
1341
-
1342
- </div>
1343
-
1344
- <div class="method-description">
1345
-
1346
- <p>
1347
- Return true if time is larger than <em>t</em>.
1348
- </p>
1349
-
1350
-
1351
-
1352
- <div class="method-source-code"
1353
- id="--source">
1354
- <pre>
1355
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 239</span>
1356
- 239: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&gt;</span>(<span class="ruby-identifier">t</span>)
1357
- 240: <span class="ruby-ivar">@time</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">time</span>
1358
- 241: <span class="ruby-keyword kw">end</span></pre>
1359
- </div>
1360
-
1361
- </div>
1362
-
1363
-
1364
-
1365
-
1366
- </div>
1367
-
1368
-
1369
- <div id="--method" class="method-detail ">
1370
- <a name="method-i-%3E%3D"></a>
1371
-
1372
- <div class="method-heading">
1373
-
1374
- <span class="method-name">&gt;=</span><span
1375
- class="method-args">(t)</span>
1376
- <span class="method-click-advice">click to toggle source</span>
1377
-
1378
- </div>
1379
-
1380
- <div class="method-description">
1381
-
1382
- <p>
1383
- Return true if time is larger or equal than <em>t</em>.
1384
- </p>
1385
-
1386
-
1387
-
1388
- <div class="method-source-code"
1389
- id="--source">
1390
- <pre>
1391
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 244</span>
1392
- 244: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&gt;=</span>(<span class="ruby-identifier">t</span>)
1393
- 245: <span class="ruby-ivar">@time</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">time</span>
1394
- 246: <span class="ruby-keyword kw">end</span></pre>
1395
- </div>
1396
-
1397
- </div>
1398
-
1399
-
1400
-
1401
-
1402
- </div>
1403
-
1404
-
1405
- <div id="align-method" class="method-detail ">
1406
- <a name="method-i-align"></a>
1407
-
1408
- <div class="method-heading">
1409
-
1410
- <span class="method-name">align</span><span
1411
- class="method-args">(clock)</span>
1412
- <span class="method-click-advice">click to toggle source</span>
1413
-
1414
- </div>
1415
-
1416
- <div class="method-description">
1417
-
1418
- <p>
1419
- Align the date to a time grid. The grid distance is determined by
1420
- <em>clock</em>.
1421
- </p>
1422
-
1423
-
1424
-
1425
- <div class="method-source-code"
1426
- id="align-source">
1427
- <pre>
1428
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 197</span>
1429
- 197: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">align</span>(<span class="ruby-identifier">clock</span>)
1430
- 198: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>((<span class="ruby-ivar">@time</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">/</span> <span class="ruby-identifier">clock</span>) * <span class="ruby-identifier">clock</span>)
1431
- 199: <span class="ruby-keyword kw">end</span></pre>
1432
- </div>
1433
-
1434
- </div>
1435
-
1436
-
1437
-
1438
-
1439
- </div>
1440
-
1441
-
1442
- <div id="begin-f-our-method" class="method-detail ">
1443
- <a name="method-i-beginOfHour"></a>
1444
-
1445
- <div class="method-heading">
1446
-
1447
- <span class="method-name">beginOfHour</span><span
1448
- class="method-args">()</span>
1449
- <span class="method-click-advice">click to toggle source</span>
1450
-
1451
- </div>
1452
-
1453
- <div class="method-description">
1454
-
1455
- <p>
1456
- Normalize time to the beginning of the current hour.
1457
- </p>
1458
-
1459
-
1460
-
1461
- <div class="method-source-code"
1462
- id="begin-f-our-source">
1463
- <pre>
1464
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 270</span>
1465
- 270: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">beginOfHour</span>
1466
- 271: <span class="ruby-identifier">t</span> = <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
1467
- 272: <span class="ruby-identifier">t</span>[<span class="ruby-value">0</span>, <span class="ruby-value">2</span>] = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">2</span>, <span class="ruby-value">0</span>)
1468
- 273: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-value">6</span>, <span class="ruby-value">4</span>)
1469
- 274: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">reverse!</span>
1470
- 275: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">local</span>(*<span class="ruby-identifier">t</span>))
1471
- 276: <span class="ruby-keyword kw">end</span></pre>
1472
- </div>
1473
-
1474
- </div>
1475
-
1476
-
1477
-
1478
-
1479
- </div>
1480
-
1481
-
1482
- <div id="begin-f-onth-method" class="method-detail ">
1483
- <a name="method-i-beginOfMonth"></a>
1484
-
1485
- <div class="method-heading">
1486
-
1487
- <span class="method-name">beginOfMonth</span><span
1488
- class="method-args">()</span>
1489
- <span class="method-click-advice">click to toggle source</span>
1490
-
1491
- </div>
1492
-
1493
- <div class="method-description">
1494
-
1495
- <p>
1496
- Normalize time to the beginning of the current month.
1497
- </p>
1498
-
1499
-
1500
-
1501
- <div class="method-source-code"
1502
- id="begin-f-onth-source">
1503
- <pre>
1504
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 303</span>
1505
- 303: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">beginOfMonth</span>
1506
- 304: <span class="ruby-identifier">t</span> = <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
1507
- 305: <span class="ruby-identifier">t</span>[<span class="ruby-value">0</span>, <span class="ruby-value">3</span>] = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">3</span>, <span class="ruby-value">0</span>)
1508
- 306: <span class="ruby-identifier">t</span>[<span class="ruby-value">3</span>] = <span class="ruby-value">1</span>
1509
- 307: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-value">6</span>, <span class="ruby-value">4</span>)
1510
- 308: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">reverse!</span>
1511
- 309: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">local</span>(*<span class="ruby-identifier">t</span>))
1512
- 310: <span class="ruby-keyword kw">end</span></pre>
1513
- </div>
1514
-
1515
- </div>
1516
-
1517
-
1518
-
1519
-
1520
- </div>
1521
-
1522
-
1523
- <div id="begin-f-uarter-method" class="method-detail ">
1524
- <a name="method-i-beginOfQuarter"></a>
1525
-
1526
- <div class="method-heading">
1527
-
1528
- <span class="method-name">beginOfQuarter</span><span
1529
- class="method-args">()</span>
1530
- <span class="method-click-advice">click to toggle source</span>
1531
-
1532
- </div>
1533
-
1534
- <div class="method-description">
1535
-
1536
- <p>
1537
- Normalize time to the beginning of the current quarter.
1538
- </p>
1539
-
1540
-
1541
-
1542
- <div class="method-source-code"
1543
- id="begin-f-uarter-source">
1544
- <pre>
1545
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 313</span>
1546
- 313: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">beginOfQuarter</span>
1547
- 314: <span class="ruby-identifier">t</span> = <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
1548
- 315: <span class="ruby-identifier">t</span>[<span class="ruby-value">0</span>, <span class="ruby-value">3</span>] = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">3</span>, <span class="ruby-value">0</span>)
1549
- 316: <span class="ruby-identifier">t</span>[<span class="ruby-value">3</span>] = <span class="ruby-value">1</span>
1550
- 317: <span class="ruby-identifier">t</span>[<span class="ruby-value">4</span>] = ((<span class="ruby-identifier">t</span>[<span class="ruby-value">4</span>] <span class="ruby-operator">-</span> <span class="ruby-value">1</span>) <span class="ruby-operator">%</span> <span class="ruby-value">3</span>) <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
1551
- 318: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-value">6</span>, <span class="ruby-value">4</span>)
1552
- 319: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">reverse!</span>
1553
- 320: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">local</span>(*<span class="ruby-identifier">t</span>))
1554
- 321: <span class="ruby-keyword kw">end</span></pre>
1555
- </div>
1556
-
1557
- </div>
1558
-
1559
-
1560
-
1561
-
1562
- </div>
1563
-
1564
-
1565
- <div id="begin-f-eek-method" class="method-detail ">
1566
- <a name="method-i-beginOfWeek"></a>
1567
-
1568
- <div class="method-heading">
1569
-
1570
- <span class="method-name">beginOfWeek</span><span
1571
- class="method-args">(startMonday)</span>
1572
- <span class="method-click-advice">click to toggle source</span>
1573
-
1574
- </div>
1575
-
1576
- <div class="method-description">
1577
-
1578
- <p>
1579
- Normalize time to the beginning of the current week. <em>startMonday</em>
1580
- determines whether the week should start on Monday or Sunday.
1581
- </p>
1582
-
1583
-
1584
-
1585
- <div class="method-source-code"
1586
- id="begin-f-eek-source">
1587
- <pre>
1588
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 289</span>
1589
- 289: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">beginOfWeek</span>(<span class="ruby-identifier">startMonday</span>)
1590
- 290: <span class="ruby-identifier">t</span> = <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">to_a</span>
1591
- 291: <span class="ruby-comment cmt"># Set time to noon, 12:00:00</span>
1592
- 292: <span class="ruby-identifier">t</span>[<span class="ruby-value">0</span>, <span class="ruby-value">3</span>] = [ <span class="ruby-value">0</span>, <span class="ruby-value">0</span>, <span class="ruby-value">12</span> ]
1593
- 293: <span class="ruby-identifier">weekday</span> = <span class="ruby-identifier">t</span>[<span class="ruby-value">6</span>]
1594
- 294: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-value">6</span>, <span class="ruby-value">4</span>)
1595
- 295: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">reverse!</span>
1596
- 296: <span class="ruby-comment cmt"># Substract the number of days determined by the weekday t[6] and set time</span>
1597
- 297: <span class="ruby-comment cmt"># to midnight of that day.</span>
1598
- 298: (<span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">local</span>(*<span class="ruby-identifier">t</span>)) <span class="ruby-operator">-</span>
1599
- 299: (<span class="ruby-identifier">weekday</span> <span class="ruby-operator">-</span> (<span class="ruby-identifier">startMonday</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>)) * <span class="ruby-value">60</span> * <span class="ruby-value">60</span> * <span class="ruby-value">24</span>).<span class="ruby-identifier">midnight</span>
1600
- 300: <span class="ruby-keyword kw">end</span></pre>
1601
- </div>
1602
-
1603
- </div>
1604
-
1605
-
1606
-
1607
-
1608
- </div>
1609
-
1610
-
1611
- <div id="begin-f-ear-method" class="method-detail ">
1612
- <a name="method-i-beginOfYear"></a>
1613
-
1614
- <div class="method-heading">
1615
-
1616
- <span class="method-name">beginOfYear</span><span
1617
- class="method-args">()</span>
1618
- <span class="method-click-advice">click to toggle source</span>
1619
-
1620
- </div>
1621
-
1622
- <div class="method-description">
1623
-
1624
- <p>
1625
- Normalize time to the beginning of the current year.
1626
- </p>
1627
-
1628
-
1629
-
1630
- <div class="method-source-code"
1631
- id="begin-f-ear-source">
1632
- <pre>
1633
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 324</span>
1634
- 324: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">beginOfYear</span>
1635
- 325: <span class="ruby-identifier">t</span> = <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
1636
- 326: <span class="ruby-identifier">t</span>[<span class="ruby-value">0</span>, <span class="ruby-value">3</span>] = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">3</span>, <span class="ruby-value">0</span>)
1637
- 327: <span class="ruby-identifier">t</span>[<span class="ruby-value">3</span>, <span class="ruby-value">2</span>] = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">2</span>, <span class="ruby-value">1</span>)
1638
- 328: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-value">6</span>, <span class="ruby-value">4</span>)
1639
- 329: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">reverse!</span>
1640
- 330: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">local</span>(*<span class="ruby-identifier">t</span>))
1641
- 331: <span class="ruby-keyword kw">end</span></pre>
1642
- </div>
1643
-
1644
- </div>
1645
-
1646
-
1647
-
1648
-
1649
- </div>
1650
-
1651
-
1652
- <div id="days-o-method" class="method-detail ">
1653
- <a name="method-i-daysTo"></a>
1654
-
1655
- <div class="method-heading">
1656
-
1657
- <span class="method-name">daysTo</span><span
1658
- class="method-args">(date)</span>
1659
- <span class="method-click-advice">click to toggle source</span>
1660
-
1661
- </div>
1662
-
1663
- <div class="method-description">
1664
-
1665
- <p>
1666
- Return the number of days between this time and <em>date</em>. The result
1667
- is always rounded up.
1668
- </p>
1669
-
1670
-
1671
-
1672
- <div class="method-source-code"
1673
- id="days-o-source">
1674
- <pre>
1675
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 415</span>
1676
- 415: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">daysTo</span>(<span class="ruby-identifier">date</span>)
1677
- 416: <span class="ruby-identifier">countIntervals</span>(<span class="ruby-identifier">date</span>, <span class="ruby-value">:sameTimeNextDay</span>)
1678
- 417: <span class="ruby-keyword kw">end</span></pre>
1679
- </div>
1680
-
1681
- </div>
1682
-
1683
-
1684
-
1685
-
1686
- </div>
1687
-
1688
-
1689
- <div id="hours-ater-method" class="method-detail ">
1690
- <a name="method-i-hoursLater"></a>
1691
-
1692
- <div class="method-heading">
1693
-
1694
- <span class="method-name">hoursLater</span><span
1695
- class="method-args">(hours)</span>
1696
- <span class="method-click-advice">click to toggle source</span>
1697
-
1698
- </div>
1699
-
1700
- <div class="method-description">
1701
-
1702
- <p>
1703
- Return a new time that is <em>hours</em> later than time.
1704
- </p>
1705
-
1706
-
1707
-
1708
- <div class="method-source-code"
1709
- id="hours-ater-source">
1710
- <pre>
1711
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 334</span>
1712
- 334: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">hoursLater</span>(<span class="ruby-identifier">hours</span>)
1713
- 335: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@time</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">hours</span> * <span class="ruby-value">3600</span>)
1714
- 336: <span class="ruby-keyword kw">end</span></pre>
1715
- </div>
1716
-
1717
- </div>
1718
-
1719
-
1720
-
1721
-
1722
- </div>
1723
-
1724
-
1725
- <div id="hours-o-method" class="method-detail ">
1726
- <a name="method-i-hoursTo"></a>
1727
-
1728
- <div class="method-heading">
1729
-
1730
- <span class="method-name">hoursTo</span><span
1731
- class="method-args">(date)</span>
1732
- <span class="method-click-advice">click to toggle source</span>
1733
-
1734
- </div>
1735
-
1736
- <div class="method-description">
1737
-
1738
- <p>
1739
- Return the number of hours between this time and <em>date</em>. The result
1740
- is always rounded up.
1741
- </p>
1742
-
1743
-
1744
-
1745
- <div class="method-source-code"
1746
- id="hours-o-source">
1747
- <pre>
1748
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 408</span>
1749
- 408: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">hoursTo</span>(<span class="ruby-identifier">date</span>)
1750
- 409: <span class="ruby-identifier">t1</span>, <span class="ruby-identifier">t2</span> = <span class="ruby-identifier">order</span>(<span class="ruby-identifier">date</span>)
1751
- 410: ((<span class="ruby-identifier">t2</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">t1</span>) <span class="ruby-operator">/</span> <span class="ruby-value">3600</span>).<span class="ruby-identifier">ceil</span>
1752
- 411: <span class="ruby-keyword kw">end</span></pre>
1753
- </div>
1754
-
1755
- </div>
1756
-
1757
-
1758
-
1759
-
1760
- </div>
1761
-
1762
-
1763
- <div id="method-missing-method" class="method-detail ">
1764
- <a name="method-i-method_missing"></a>
1765
-
1766
- <div class="method-heading">
1767
-
1768
- <span class="method-name">method_missing</span><span
1769
- class="method-args">(func, *args)</span>
1770
- <span class="method-click-advice">click to toggle source</span>
1771
-
1772
- </div>
1773
-
1774
- <div class="method-description">
1775
-
1776
- <p>
1777
- Pass any unknown function directoy to the @time variable.
1778
- </p>
1779
-
1780
-
1781
-
1782
- <div class="method-source-code"
1783
- id="method-missing-source">
1784
- <pre>
1785
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 504</span>
1786
- 504: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">method_missing</span>(<span class="ruby-identifier">func</span>, *<span class="ruby-identifier">args</span>)
1787
- 505: <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">method</span>(<span class="ruby-identifier">func</span>).<span class="ruby-identifier">call</span>(*<span class="ruby-identifier">args</span>)
1788
- 506: <span class="ruby-keyword kw">end</span></pre>
1789
- </div>
1790
-
1791
- </div>
1792
-
1793
-
1794
-
1795
-
1796
- </div>
1797
-
1798
-
1799
- <div id="midnight-method" class="method-detail ">
1800
- <a name="method-i-midnight"></a>
1801
-
1802
- <div class="method-heading">
1803
-
1804
- <span class="method-name">midnight</span><span
1805
- class="method-args">()</span>
1806
- <span class="method-click-advice">click to toggle source</span>
1807
-
1808
- </div>
1809
-
1810
- <div class="method-description">
1811
-
1812
- <p>
1813
- Normalize time to the beginning of the current day.
1814
- </p>
1815
-
1816
-
1817
-
1818
- <div class="method-source-code"
1819
- id="midnight-source">
1820
- <pre>
1821
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 279</span>
1822
- 279: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">midnight</span>
1823
- 280: <span class="ruby-identifier">t</span> = <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
1824
- 281: <span class="ruby-identifier">t</span>[<span class="ruby-value">0</span>, <span class="ruby-value">3</span>] = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">3</span>, <span class="ruby-value">0</span>)
1825
- 282: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-value">6</span>, <span class="ruby-value">4</span>)
1826
- 283: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">reverse!</span>
1827
- 284: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">local</span>(*<span class="ruby-identifier">t</span>))
1828
- 285: <span class="ruby-keyword kw">end</span></pre>
1829
- </div>
1830
-
1831
- </div>
1832
-
1833
-
1834
-
1835
-
1836
- </div>
1837
-
1838
-
1839
- <div id="month-nd-ear-method" class="method-detail ">
1840
- <a name="method-i-monthAndYear"></a>
1841
-
1842
- <div class="method-heading">
1843
-
1844
- <span class="method-name">monthAndYear</span><span
1845
- class="method-args">()</span>
1846
- <span class="method-click-advice">click to toggle source</span>
1847
-
1848
- </div>
1849
-
1850
- <div class="method-description">
1851
-
1852
- <p>
1853
- Return the abbreviated month name and the full year. E. g. &#8216;Feb
1854
- 1972&#8217;.
1855
- </p>
1856
-
1857
-
1858
-
1859
- <div class="method-source-code"
1860
- id="month-nd-ear-source">
1861
- <pre>
1862
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 481</span>
1863
- 481: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">monthAndYear</span>
1864
- 482: <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">strftime</span>(<span class="ruby-value str">'%b %Y'</span>)
1865
- 483: <span class="ruby-keyword kw">end</span></pre>
1866
- </div>
1867
-
1868
- </div>
1869
-
1870
-
1871
-
1872
-
1873
- </div>
1874
-
1875
-
1876
- <div id="months-o-method" class="method-detail ">
1877
- <a name="method-i-monthsTo"></a>
1878
-
1879
- <div class="method-heading">
1880
-
1881
- <span class="method-name">monthsTo</span><span
1882
- class="method-args">(date)</span>
1883
- <span class="method-click-advice">click to toggle source</span>
1884
-
1885
- </div>
1886
-
1887
- <div class="method-description">
1888
-
1889
- <p>
1890
- Return the number of months between this time and <em>date</em>. The result
1891
- is always rounded up.
1892
- </p>
1893
-
1894
-
1895
-
1896
- <div class="method-source-code"
1897
- id="months-o-source">
1898
- <pre>
1899
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 427</span>
1900
- 427: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">monthsTo</span>(<span class="ruby-identifier">date</span>)
1901
- 428: <span class="ruby-identifier">countIntervals</span>(<span class="ruby-identifier">date</span>, <span class="ruby-value">:sameTimeNextMonth</span>)
1902
- 429: <span class="ruby-keyword kw">end</span></pre>
1903
- </div>
1904
-
1905
- </div>
1906
-
1907
-
1908
-
1909
-
1910
- </div>
1911
-
1912
-
1913
- <div id="next-ay-f-eek-method" class="method-detail ">
1914
- <a name="method-i-nextDayOfWeek"></a>
1915
-
1916
- <div class="method-heading">
1917
-
1918
- <span class="method-name">nextDayOfWeek</span><span
1919
- class="method-args">(dow)</span>
1920
- <span class="method-click-advice">click to toggle source</span>
1921
-
1922
- </div>
1923
-
1924
- <div class="method-description">
1925
-
1926
- <p>
1927
- Return the start of the next <em>dow</em> day of week after <em>date</em>.
1928
- <em>dow</em> must be 0 for Sundays, 1 for Mondays and 6 for Saturdays. If
1929
- <em>date</em> is a Tuesday and <em>dow</em> is 5 (Friday) the date of next
1930
- Friday 0:00 will be returned. If <em>date</em> is a Tuesday and
1931
- <em>dow</em> is 2 (Tuesday) the date of the next Tuesday will be returned.
1932
- </p>
1933
-
1934
-
1935
-
1936
- <div class="method-source-code"
1937
- id="next-ay-f-eek-source">
1938
- <pre>
1939
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 495</span>
1940
- 495: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">nextDayOfWeek</span>(<span class="ruby-identifier">dow</span>)
1941
- 496: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Day of week must be 0 - 6.&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">dow</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">0</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">dow</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value">6</span>
1942
- 497: <span class="ruby-identifier">d</span> = <span class="ruby-identifier">midnight</span>.<span class="ruby-identifier">sameTimeNextDay</span>
1943
- 498: <span class="ruby-identifier">currentDoW</span> = <span class="ruby-identifier">d</span>.<span class="ruby-identifier">strftime</span>(<span class="ruby-value str">'%w'</span>).<span class="ruby-identifier">to_i</span>
1944
- 499: <span class="ruby-value">1</span>.<span class="ruby-identifier">upto</span>((<span class="ruby-identifier">dow</span> <span class="ruby-operator">+</span> <span class="ruby-value">7</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">currentDoW</span>) <span class="ruby-operator">%</span> <span class="ruby-value">7</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">d</span> = <span class="ruby-identifier">d</span>.<span class="ruby-identifier">sameTimeNextDay</span> }
1945
- 500: <span class="ruby-identifier">d</span>
1946
- 501: <span class="ruby-keyword kw">end</span></pre>
1947
- </div>
1948
-
1949
- </div>
1950
-
1951
-
1952
-
1953
-
1954
- </div>
1955
-
1956
-
1957
- <div id="quarter-ame-method" class="method-detail ">
1958
- <a name="method-i-quarterName"></a>
1959
-
1960
- <div class="method-heading">
1961
-
1962
- <span class="method-name">quarterName</span><span
1963
- class="method-args">()</span>
1964
- <span class="method-click-advice">click to toggle source</span>
1965
-
1966
- </div>
1967
-
1968
- <div class="method-description">
1969
-
1970
- <p>
1971
- Return the number of the quarter prefixed by a &#8216;Q&#8217;.
1972
- </p>
1973
-
1974
-
1975
-
1976
- <div class="method-source-code"
1977
- id="quarter-ame-source">
1978
- <pre>
1979
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 470</span>
1980
- 470: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">quarterName</span>
1981
- 471: <span class="ruby-node">&quot;Q#{(@time.mon / 3) + 1}&quot;</span>
1982
- 472: <span class="ruby-keyword kw">end</span></pre>
1983
- </div>
1984
-
1985
- </div>
1986
-
1987
-
1988
-
1989
-
1990
- </div>
1991
-
1992
-
1993
- <div id="quarters-o-method" class="method-detail ">
1994
- <a name="method-i-quartersTo"></a>
1995
-
1996
- <div class="method-heading">
1997
-
1998
- <span class="method-name">quartersTo</span><span
1999
- class="method-args">(date)</span>
2000
- <span class="method-click-advice">click to toggle source</span>
2001
-
2002
- </div>
2003
-
2004
- <div class="method-description">
2005
-
2006
- <p>
2007
- Return the number of quarters between this time and <em>date</em>. The
2008
- result is always rounded up.
2009
- </p>
2010
-
2011
-
2012
-
2013
- <div class="method-source-code"
2014
- id="quarters-o-source">
2015
- <pre>
2016
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 433</span>
2017
- 433: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">quartersTo</span>(<span class="ruby-identifier">date</span>)
2018
- 434: <span class="ruby-identifier">countIntervals</span>(<span class="ruby-identifier">date</span>, <span class="ruby-value">:sameTimeNextQuarter</span>)
2019
- 435: <span class="ruby-keyword kw">end</span></pre>
2020
- </div>
2021
-
2022
- </div>
2023
-
2024
-
2025
-
2026
-
2027
- </div>
2028
-
2029
-
2030
- <div id="same-ime-ext-ay-method" class="method-detail ">
2031
- <a name="method-i-sameTimeNextDay"></a>
2032
-
2033
- <div class="method-heading">
2034
-
2035
- <span class="method-name">sameTimeNextDay</span><span
2036
- class="method-args">()</span>
2037
- <span class="method-click-advice">click to toggle source</span>
2038
-
2039
- </div>
2040
-
2041
- <div class="method-description">
2042
-
2043
- <p>
2044
- Return a new time that is 1 day later than time but at the same time of
2045
- day.
2046
- </p>
2047
-
2048
-
2049
-
2050
- <div class="method-source-code"
2051
- id="same-ime-ext-ay-source">
2052
- <pre>
2053
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 345</span>
2054
- 345: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sameTimeNextDay</span>
2055
- 346: <span class="ruby-identifier">delta</span> = [ <span class="ruby-value">0</span>, <span class="ruby-value">1</span>, <span class="ruby-value">1</span> ]
2056
- 347: <span class="ruby-identifier">localT1</span> = <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
2057
- 348: <span class="ruby-identifier">delta</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">d</span><span class="ruby-operator">|</span>
2058
- 349: <span class="ruby-identifier">t</span> = <span class="ruby-ivar">@time</span> <span class="ruby-operator">+</span> (<span class="ruby-value">24</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">d</span>) * <span class="ruby-value">60</span> * <span class="ruby-value">60</span>
2059
- 350: <span class="ruby-identifier">localT2</span> = <span class="ruby-identifier">t</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
2060
- 351: <span class="ruby-keyword kw">return</span> <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">t</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">localT1</span>[<span class="ruby-value">0</span>, <span class="ruby-value">3</span>] <span class="ruby-operator">==</span> <span class="ruby-identifier">localT2</span>[<span class="ruby-value">0</span>, <span class="ruby-value">3</span>]
2061
- 352: <span class="ruby-keyword kw">end</span>
2062
- 353: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Algorithm is broken for #{@time}&quot;</span>
2063
- 354: <span class="ruby-keyword kw">end</span></pre>
2064
- </div>
2065
-
2066
- </div>
2067
-
2068
-
2069
-
2070
-
2071
- </div>
2072
-
2073
-
2074
- <div id="same-ime-ext-our-method" class="method-detail ">
2075
- <a name="method-i-sameTimeNextHour"></a>
2076
-
2077
- <div class="method-heading">
2078
-
2079
- <span class="method-name">sameTimeNextHour</span><span
2080
- class="method-args">()</span>
2081
- <span class="method-click-advice">click to toggle source</span>
2082
-
2083
- </div>
2084
-
2085
- <div class="method-description">
2086
-
2087
- <p>
2088
- Return a new time that is 1 hour later than time.
2089
- </p>
2090
-
2091
-
2092
-
2093
- <div class="method-source-code"
2094
- id="same-ime-ext-our-source">
2095
- <pre>
2096
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 339</span>
2097
- 339: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sameTimeNextHour</span>
2098
- 340: <span class="ruby-identifier">hoursLater</span>(<span class="ruby-value">1</span>)
2099
- 341: <span class="ruby-keyword kw">end</span></pre>
2100
- </div>
2101
-
2102
- </div>
2103
-
2104
-
2105
-
2106
-
2107
- </div>
2108
-
2109
-
2110
- <div id="same-ime-ext-onth-method" class="method-detail ">
2111
- <a name="method-i-sameTimeNextMonth"></a>
2112
-
2113
- <div class="method-heading">
2114
-
2115
- <span class="method-name">sameTimeNextMonth</span><span
2116
- class="method-args">()</span>
2117
- <span class="method-click-advice">click to toggle source</span>
2118
-
2119
- </div>
2120
-
2121
- <div class="method-description">
2122
-
2123
- <p>
2124
- Return a new time that is 1 month later than time but at the same time of
2125
- day.
2126
- </p>
2127
-
2128
-
2129
-
2130
- <div class="method-source-code"
2131
- id="same-ime-ext-onth-source">
2132
- <pre>
2133
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 371</span>
2134
- 371: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sameTimeNextMonth</span>
2135
- 372: <span class="ruby-identifier">sec</span>, <span class="ruby-identifier">min</span>, <span class="ruby-identifier">hour</span>, <span class="ruby-identifier">day</span>, <span class="ruby-identifier">month</span>, <span class="ruby-identifier">year</span> = <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
2136
- 373: <span class="ruby-identifier">monMax</span> = <span class="ruby-identifier">month</span> <span class="ruby-operator">==</span> <span class="ruby-value">2</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">leapYear?</span>(<span class="ruby-identifier">year</span>) <span class="ruby-operator">?</span> <span class="ruby-value">29</span> <span class="ruby-operator">:</span> <span class="ruby-constant">MON_MAX</span>[<span class="ruby-identifier">month</span>]
2137
- 374: <span class="ruby-identifier">month</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
2138
- 375: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">month</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">12</span>
2139
- 376: <span class="ruby-identifier">month</span> = <span class="ruby-value">1</span>
2140
- 377: <span class="ruby-identifier">year</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
2141
- 378: <span class="ruby-keyword kw">end</span>
2142
- 379: <span class="ruby-identifier">day</span> = <span class="ruby-identifier">monMax</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">day</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">monMax</span>
2143
- 380: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">mktime</span>(<span class="ruby-identifier">year</span>, <span class="ruby-identifier">month</span>, <span class="ruby-identifier">day</span>, <span class="ruby-identifier">hour</span>, <span class="ruby-identifier">min</span>, <span class="ruby-identifier">sec</span>, <span class="ruby-value">0</span>))
2144
- 381: <span class="ruby-keyword kw">end</span></pre>
2145
- </div>
2146
-
2147
- </div>
2148
-
2149
-
2150
-
2151
-
2152
- </div>
2153
-
2154
-
2155
- <div id="same-ime-ext-uarter-method" class="method-detail ">
2156
- <a name="method-i-sameTimeNextQuarter"></a>
2157
-
2158
- <div class="method-heading">
2159
-
2160
- <span class="method-name">sameTimeNextQuarter</span><span
2161
- class="method-args">()</span>
2162
- <span class="method-click-advice">click to toggle source</span>
2163
-
2164
- </div>
2165
-
2166
- <div class="method-description">
2167
-
2168
- <p>
2169
- Return a new time that is 1 quarter later than time but at the same time of
2170
- day.
2171
- </p>
2172
-
2173
-
2174
-
2175
- <div class="method-source-code"
2176
- id="same-ime-ext-uarter-source">
2177
- <pre>
2178
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 385</span>
2179
- 385: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sameTimeNextQuarter</span>
2180
- 386: <span class="ruby-identifier">t</span> = <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
2181
- 387: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">t</span>[<span class="ruby-value">4</span>] <span class="ruby-operator">+=</span> <span class="ruby-value">3</span>) <span class="ruby-operator">&gt;</span> <span class="ruby-value">12</span>
2182
- 388: <span class="ruby-identifier">t</span>[<span class="ruby-value">4</span>] <span class="ruby-operator">-=</span> <span class="ruby-value">12</span>
2183
- 389: <span class="ruby-identifier">t</span>[<span class="ruby-value">5</span>] <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
2184
- 390: <span class="ruby-keyword kw">end</span>
2185
- 391: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-value">6</span>, <span class="ruby-value">4</span>)
2186
- 392: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">reverse!</span>
2187
- 393: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">local</span>(*<span class="ruby-identifier">t</span>))
2188
- 394: <span class="ruby-keyword kw">end</span></pre>
2189
- </div>
2190
-
2191
- </div>
2192
-
2193
-
2194
-
2195
-
2196
- </div>
2197
-
2198
-
2199
- <div id="same-ime-ext-eek-method" class="method-detail ">
2200
- <a name="method-i-sameTimeNextWeek"></a>
2201
-
2202
- <div class="method-heading">
2203
-
2204
- <span class="method-name">sameTimeNextWeek</span><span
2205
- class="method-args">()</span>
2206
- <span class="method-click-advice">click to toggle source</span>
2207
-
2208
- </div>
2209
-
2210
- <div class="method-description">
2211
-
2212
- <p>
2213
- Return a new time that is 1 week later than time but at the same time of
2214
- day.
2215
- </p>
2216
-
2217
-
2218
-
2219
- <div class="method-source-code"
2220
- id="same-ime-ext-eek-source">
2221
- <pre>
2222
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 358</span>
2223
- 358: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sameTimeNextWeek</span>
2224
- 359: <span class="ruby-identifier">delta</span> = [ <span class="ruby-value">0</span>, <span class="ruby-value">1</span>, <span class="ruby-value">1</span> ]
2225
- 360: <span class="ruby-identifier">localT1</span> = <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
2226
- 361: <span class="ruby-identifier">delta</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">d</span><span class="ruby-operator">|</span>
2227
- 362: <span class="ruby-identifier">t</span> = <span class="ruby-ivar">@time</span> <span class="ruby-operator">+</span> (<span class="ruby-value">7</span> * <span class="ruby-value">24</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">d</span>) * <span class="ruby-value">60</span> * <span class="ruby-value">60</span>
2228
- 363: <span class="ruby-identifier">localT2</span> = <span class="ruby-identifier">t</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
2229
- 364: <span class="ruby-keyword kw">return</span> <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">t</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">localT1</span>[<span class="ruby-value">0</span>, <span class="ruby-value">3</span>] <span class="ruby-operator">==</span> <span class="ruby-identifier">localT2</span>[<span class="ruby-value">0</span>, <span class="ruby-value">3</span>]
2230
- 365: <span class="ruby-keyword kw">end</span>
2231
- 366: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Algorithm is broken for #{@time}&quot;</span>
2232
- 367: <span class="ruby-keyword kw">end</span></pre>
2233
- </div>
2234
-
2235
- </div>
2236
-
2237
-
2238
-
2239
-
2240
- </div>
2241
-
2242
-
2243
- <div id="same-ime-ext-ear-method" class="method-detail ">
2244
- <a name="method-i-sameTimeNextYear"></a>
2245
-
2246
- <div class="method-heading">
2247
-
2248
- <span class="method-name">sameTimeNextYear</span><span
2249
- class="method-args">()</span>
2250
- <span class="method-click-advice">click to toggle source</span>
2251
-
2252
- </div>
2253
-
2254
- <div class="method-description">
2255
-
2256
- <p>
2257
- Return a new time that is 1 year later than time but at the same time of
2258
- day.
2259
- </p>
2260
-
2261
-
2262
-
2263
- <div class="method-source-code"
2264
- id="same-ime-ext-ear-source">
2265
- <pre>
2266
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 398</span>
2267
- 398: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sameTimeNextYear</span>
2268
- 399: <span class="ruby-identifier">t</span> = <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">to_a</span>
2269
- 400: <span class="ruby-identifier">t</span>[<span class="ruby-value">5</span>] <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
2270
- 401: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">slice!</span>(<span class="ruby-value">6</span>, <span class="ruby-value">4</span>)
2271
- 402: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">reverse!</span>
2272
- 403: <span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">Time</span>.<span class="ruby-identifier">local</span>(*<span class="ruby-identifier">t</span>))
2273
- 404: <span class="ruby-keyword kw">end</span></pre>
2274
- </div>
2275
-
2276
- </div>
2277
-
2278
-
2279
-
2280
-
2281
- </div>
2282
-
2283
-
2284
- <div id="seconds-f-ay-method" class="method-detail ">
2285
- <a name="method-i-secondsOfDay"></a>
2286
-
2287
- <div class="method-heading">
2288
-
2289
- <span class="method-name">secondsOfDay</span><span
2290
- class="method-args">(tz = nil)</span>
2291
- <span class="method-click-advice">click to toggle source</span>
2292
-
2293
- </div>
2294
-
2295
- <div class="method-description">
2296
-
2297
- <p>
2298
- Returns the total number of seconds of the day. The time is assumed to be
2299
- in the time zone specified by <em>tz</em>.
2300
- </p>
2301
-
2302
-
2303
-
2304
- <div class="method-source-code"
2305
- id="seconds-f-ay-source">
2306
- <pre>
2307
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 203</span>
2308
- 203: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">secondsOfDay</span>(<span class="ruby-identifier">tz</span> = <span class="ruby-keyword kw">nil</span>)
2309
- 204: <span class="ruby-comment cmt"># TODO: Add timezone support</span>
2310
- 205: (<span class="ruby-ivar">@time</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">gmt_offset</span>) <span class="ruby-operator">%</span> (<span class="ruby-value">60</span> * <span class="ruby-value">60</span> * <span class="ruby-value">24</span>)
2311
- 206: <span class="ruby-keyword kw">end</span></pre>
2312
- </div>
2313
-
2314
- </div>
2315
-
2316
-
2317
-
2318
-
2319
- </div>
2320
-
2321
-
2322
- <div id="short-onth-ame-method" class="method-detail ">
2323
- <a name="method-i-shortMonthName"></a>
2324
-
2325
- <div class="method-heading">
2326
-
2327
- <span class="method-name">shortMonthName</span><span
2328
- class="method-args">()</span>
2329
- <span class="method-click-advice">click to toggle source</span>
2330
-
2331
- </div>
2332
-
2333
- <div class="method-description">
2334
-
2335
- <p>
2336
- Return the abbreviated month name.
2337
- </p>
2338
-
2339
-
2340
-
2341
- <div class="method-source-code"
2342
- id="short-onth-ame-source">
2343
- <pre>
2344
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 465</span>
2345
- 465: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">shortMonthName</span>
2346
- 466: <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">strftime</span>(<span class="ruby-value str">'%b'</span>)
2347
- 467: <span class="ruby-keyword kw">end</span></pre>
2348
- </div>
2349
-
2350
- </div>
2351
-
2352
-
2353
-
2354
-
2355
- </div>
2356
-
2357
-
2358
- <div id="to-ary-method" class="method-detail ">
2359
- <a name="method-i-to_ary"></a>
2360
-
2361
- <div class="method-heading">
2362
-
2363
- <span class="method-name">to_ary</span><span
2364
- class="method-args">()</span>
2365
- <span class="method-click-advice">click to toggle source</span>
2366
-
2367
- </div>
2368
-
2369
- <div class="method-description">
2370
-
2371
-
2372
-
2373
-
2374
-
2375
- <div class="method-source-code"
2376
- id="to-ary-source">
2377
- <pre>
2378
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 459</span>
2379
- 459: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_ary</span>
2380
- 460: <span class="ruby-identifier">to_s</span>
2381
- 461: <span class="ruby-keyword kw">end</span></pre>
2382
- </div>
2383
-
2384
- </div>
2385
-
2386
-
2387
-
2388
-
2389
- </div>
2390
-
2391
-
2392
- <div id="to-i-method" class="method-detail ">
2393
- <a name="method-i-to_i"></a>
2394
-
2395
- <div class="method-heading">
2396
-
2397
- <span class="method-name">to_i</span><span
2398
- class="method-args">()</span>
2399
- <span class="method-click-advice">click to toggle source</span>
2400
-
2401
- </div>
2402
-
2403
- <div class="method-description">
2404
-
2405
- <p>
2406
- Return the seconds since Epoch.
2407
- </p>
2408
-
2409
-
2410
-
2411
- <div class="method-source-code"
2412
- id="to-i-source">
2413
- <pre>
2414
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 455</span>
2415
- 455: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_i</span>
2416
- 456: <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">to_i</span>
2417
- 457: <span class="ruby-keyword kw">end</span></pre>
2418
- </div>
2419
-
2420
- </div>
2421
-
2422
-
2423
-
2424
-
2425
- </div>
2426
-
2427
-
2428
- <div id="to-s-method" class="method-detail ">
2429
- <a name="method-i-to_s"></a>
2430
-
2431
- <div class="method-heading">
2432
-
2433
- <span class="method-name">to_s</span><span
2434
- class="method-args">(format = nil)</span>
2435
- <span class="method-click-advice">click to toggle source</span>
2436
-
2437
- </div>
2438
-
2439
- <div class="method-description">
2440
-
2441
- <p>
2442
- This function is just a wrapper around Time.strftime(). In case @time is
2443
- nil, it returns &#8216;unkown&#8217;.
2444
- </p>
2445
-
2446
-
2447
-
2448
- <div class="method-source-code"
2449
- id="to-s-source">
2450
- <pre>
2451
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 445</span>
2452
- 445: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>(<span class="ruby-identifier">format</span> = <span class="ruby-keyword kw">nil</span>)
2453
- 446: <span class="ruby-keyword kw">return</span> <span class="ruby-value str">'unknown'</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">nil?</span>
2454
- 447: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">format</span>.<span class="ruby-identifier">nil?</span>
2455
- 448: <span class="ruby-identifier">format</span> = <span class="ruby-value str">'%Y-%m-%d-%H:%M'</span> <span class="ruby-operator">+</span> (<span class="ruby-ivar">@time</span>.<span class="ruby-identifier">sec</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-value str">''</span> <span class="ruby-operator">:</span> <span class="ruby-value str">':%S'</span>) <span class="ruby-operator">+</span> <span class="ruby-value str">'-%z'</span>
2456
- 449: <span class="ruby-keyword kw">end</span>
2457
- 450: <span class="ruby-comment cmt"># Always report values in local timezone</span>
2458
- 451: <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">dup</span>.<span class="ruby-identifier">localtime</span>.<span class="ruby-identifier">strftime</span>(<span class="ruby-identifier">format</span>)
2459
- 452: <span class="ruby-keyword kw">end</span></pre>
2460
- </div>
2461
-
2462
- </div>
2463
-
2464
-
2465
-
2466
-
2467
- </div>
2468
-
2469
-
2470
- <div id="upto-method" class="method-detail ">
2471
- <a name="method-i-upto"></a>
2472
-
2473
- <div class="method-heading">
2474
-
2475
- <span class="method-name">upto</span><span
2476
- class="method-args">(endDate, step = 1)</span>
2477
- <span class="method-click-advice">click to toggle source</span>
2478
-
2479
- </div>
2480
-
2481
- <div class="method-description">
2482
-
2483
- <p>
2484
- Iterator that executes the block until time has reached <em>endDate</em>
2485
- increasing time by <em>step</em> on each iteration.
2486
- </p>
2487
-
2488
-
2489
-
2490
- <div class="method-source-code"
2491
- id="upto-source">
2492
- <pre>
2493
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 261</span>
2494
- 261: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">upto</span>(<span class="ruby-identifier">endDate</span>, <span class="ruby-identifier">step</span> = <span class="ruby-value">1</span>)
2495
- 262: <span class="ruby-identifier">t</span> = <span class="ruby-ivar">@time</span>
2496
- 263: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">t</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">endDate</span>.<span class="ruby-identifier">time</span>
2497
- 264: <span class="ruby-keyword kw">yield</span>(<span class="ruby-constant">TjTime</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">t</span>))
2498
- 265: <span class="ruby-identifier">t</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">step</span>
2499
- 266: <span class="ruby-keyword kw">end</span>
2500
- 267: <span class="ruby-keyword kw">end</span></pre>
2501
- </div>
2502
-
2503
- </div>
2504
-
2505
-
2506
-
2507
-
2508
- </div>
2509
-
2510
-
2511
- <div id="week-method" class="method-detail ">
2512
- <a name="method-i-week"></a>
2513
-
2514
- <div class="method-heading">
2515
-
2516
- <span class="method-name">week</span><span
2517
- class="method-args">(weekStartsMonday)</span>
2518
- <span class="method-click-advice">click to toggle source</span>
2519
-
2520
- </div>
2521
-
2522
- <div class="method-description">
2523
-
2524
- <p>
2525
- Return the week number. <em>weekStartsMonday</em> specifies wheter the
2526
- counting should be for weeks starting Mondays or Sundays.
2527
- </p>
2528
-
2529
-
2530
-
2531
- <div class="method-source-code"
2532
- id="week-source">
2533
- <pre>
2534
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 476</span>
2535
- 476: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">week</span>(<span class="ruby-identifier">weekStartsMonday</span>)
2536
- 477: <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">strftime</span>(<span class="ruby-identifier">weekStartsMonday</span> <span class="ruby-operator">?</span> <span class="ruby-value str">'%W'</span> <span class="ruby-operator">:</span> <span class="ruby-value str">'%U'</span>)
2537
- 478: <span class="ruby-keyword kw">end</span></pre>
2538
- </div>
2539
-
2540
- </div>
2541
-
2542
-
2543
-
2544
-
2545
- </div>
2546
-
2547
-
2548
- <div id="weekday-nd-ate-method" class="method-detail ">
2549
- <a name="method-i-weekdayAndDate"></a>
2550
-
2551
- <div class="method-heading">
2552
-
2553
- <span class="method-name">weekdayAndDate</span><span
2554
- class="method-args">()</span>
2555
- <span class="method-click-advice">click to toggle source</span>
2556
-
2557
- </div>
2558
-
2559
- <div class="method-description">
2560
-
2561
- <p>
2562
- Return the abbreviated weekday and the full date. E. g. &#8216;Sat
2563
- 2007-11-03&#8217;.
2564
- </p>
2565
-
2566
-
2567
-
2568
- <div class="method-source-code"
2569
- id="weekday-nd-ate-source">
2570
- <pre>
2571
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 486</span>
2572
- 486: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">weekdayAndDate</span>
2573
- 487: <span class="ruby-ivar">@time</span>.<span class="ruby-identifier">strftime</span>(<span class="ruby-value str">'%A %Y-%m-%d'</span>)
2574
- 488: <span class="ruby-keyword kw">end</span></pre>
2575
- </div>
2576
-
2577
- </div>
2578
-
2579
-
2580
-
2581
-
2582
- </div>
2583
-
2584
-
2585
- <div id="weeks-o-method" class="method-detail ">
2586
- <a name="method-i-weeksTo"></a>
2587
-
2588
- <div class="method-heading">
2589
-
2590
- <span class="method-name">weeksTo</span><span
2591
- class="method-args">(date)</span>
2592
- <span class="method-click-advice">click to toggle source</span>
2593
-
2594
- </div>
2595
-
2596
- <div class="method-description">
2597
-
2598
- <p>
2599
- Return the number of weeks between this time and <em>date</em>. The result
2600
- is always rounded up.
2601
- </p>
2602
-
2603
-
2604
-
2605
- <div class="method-source-code"
2606
- id="weeks-o-source">
2607
- <pre>
2608
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 421</span>
2609
- 421: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">weeksTo</span>(<span class="ruby-identifier">date</span>)
2610
- 422: <span class="ruby-identifier">countIntervals</span>(<span class="ruby-identifier">date</span>, <span class="ruby-value">:sameTimeNextWeek</span>)
2611
- 423: <span class="ruby-keyword kw">end</span></pre>
2612
- </div>
2613
-
2614
- </div>
2615
-
2616
-
2617
-
2618
-
2619
- </div>
2620
-
2621
-
2622
- <div id="years-o-method" class="method-detail ">
2623
- <a name="method-i-yearsTo"></a>
2624
-
2625
- <div class="method-heading">
2626
-
2627
- <span class="method-name">yearsTo</span><span
2628
- class="method-args">(date)</span>
2629
- <span class="method-click-advice">click to toggle source</span>
2630
-
2631
- </div>
2632
-
2633
- <div class="method-description">
2634
-
2635
- <p>
2636
- Return the number of years between this time and <em>date</em>. The result
2637
- is always rounded up.
2638
- </p>
2639
-
2640
-
2641
-
2642
- <div class="method-source-code"
2643
- id="years-o-source">
2644
- <pre>
2645
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 439</span>
2646
- 439: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">yearsTo</span>(<span class="ruby-identifier">date</span>)
2647
- 440: <span class="ruby-identifier">countIntervals</span>(<span class="ruby-identifier">date</span>, <span class="ruby-value">:sameTimeNextYear</span>)
2648
- 441: <span class="ruby-keyword kw">end</span></pre>
2649
- </div>
2650
-
2651
- </div>
2652
-
2653
-
2654
-
2655
-
2656
- </div>
2657
-
2658
-
2659
- </div>
2660
-
2661
- <div id="private-instance-method-details" class="method-section section">
2662
- <h3 class="section-header">Private Instance Methods</h3>
2663
-
2664
-
2665
- <div id="count-ntervals-method" class="method-detail ">
2666
- <a name="method-i-countIntervals"></a>
2667
-
2668
- <div class="method-heading">
2669
-
2670
- <span class="method-name">countIntervals</span><span
2671
- class="method-args">(date, stepFunc)</span>
2672
- <span class="method-click-advice">click to toggle source</span>
2673
-
2674
- </div>
2675
-
2676
- <div class="method-description">
2677
-
2678
-
2679
-
2680
-
2681
-
2682
- <div class="method-source-code"
2683
- id="count-ntervals-source">
2684
- <pre>
2685
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 521</span>
2686
- 521: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">countIntervals</span>(<span class="ruby-identifier">date</span>, <span class="ruby-identifier">stepFunc</span>)
2687
- 522: <span class="ruby-identifier">i</span> = <span class="ruby-value">0</span>
2688
- 523: <span class="ruby-identifier">t1</span>, <span class="ruby-identifier">t2</span> = <span class="ruby-identifier">order</span>(<span class="ruby-identifier">date</span>)
2689
- 524: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">t1</span> <span class="ruby-operator">&lt;</span> <span class="ruby-identifier">t2</span>
2690
- 525: <span class="ruby-identifier">t1</span> = <span class="ruby-identifier">t1</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">stepFunc</span>)
2691
- 526: <span class="ruby-identifier">i</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
2692
- 527: <span class="ruby-keyword kw">end</span>
2693
- 528: <span class="ruby-identifier">i</span>
2694
- 529: <span class="ruby-keyword kw">end</span></pre>
2695
- </div>
2696
-
2697
- </div>
2698
-
2699
-
2700
-
2701
-
2702
- </div>
2703
-
2704
-
2705
- <div id="leap-ear--method" class="method-detail ">
2706
- <a name="method-i-leapYear%3F"></a>
2707
-
2708
- <div class="method-heading">
2709
-
2710
- <span class="method-name">leapYear?</span><span
2711
- class="method-args">(year)</span>
2712
- <span class="method-click-advice">click to toggle source</span>
2713
-
2714
- </div>
2715
-
2716
- <div class="method-description">
2717
-
2718
-
2719
-
2720
-
2721
-
2722
- <div class="method-source-code"
2723
- id="leap-ear--source">
2724
- <pre>
2725
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 531</span>
2726
- 531: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">leapYear?</span>(<span class="ruby-identifier">year</span>)
2727
- 532: <span class="ruby-keyword kw">case</span>
2728
- 533: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">year</span> <span class="ruby-operator">%</span> <span class="ruby-value">400</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
2729
- 534: <span class="ruby-keyword kw">true</span>
2730
- 535: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">year</span> <span class="ruby-operator">%</span> <span class="ruby-value">100</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
2731
- 536: <span class="ruby-keyword kw">false</span>
2732
- 537: <span class="ruby-keyword kw">else</span>
2733
- 538: <span class="ruby-identifier">year</span> <span class="ruby-operator">%</span> <span class="ruby-value">4</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
2734
- 539: <span class="ruby-keyword kw">end</span>
2735
- 540: <span class="ruby-keyword kw">end</span></pre>
2736
- </div>
2737
-
2738
- </div>
2739
-
2740
-
2741
-
2742
-
2743
- </div>
2744
-
2745
-
2746
- <div id="order-method" class="method-detail ">
2747
- <a name="method-i-order"></a>
2748
-
2749
- <div class="method-heading">
2750
-
2751
- <span class="method-name">order</span><span
2752
- class="method-args">(date)</span>
2753
- <span class="method-click-advice">click to toggle source</span>
2754
-
2755
- </div>
2756
-
2757
- <div class="method-description">
2758
-
2759
-
2760
-
2761
-
2762
-
2763
- <div class="method-source-code"
2764
- id="order-source">
2765
- <pre>
2766
- <span class="ruby-comment cmt"># File lib/TjTime.rb, line 510</span>
2767
- 510: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">order</span>(<span class="ruby-identifier">date</span>)
2768
- 511: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">date</span>.<span class="ruby-identifier">time</span> <span class="ruby-operator">&lt;</span> <span class="ruby-ivar">@time</span>
2769
- 512: <span class="ruby-identifier">t1</span> = <span class="ruby-identifier">date</span>
2770
- 513: <span class="ruby-identifier">t2</span> = <span class="ruby-keyword kw">self</span>
2771
- 514: <span class="ruby-keyword kw">else</span>
2772
- 515: <span class="ruby-identifier">t1</span> = <span class="ruby-keyword kw">self</span>
2773
- 516: <span class="ruby-identifier">t2</span> = <span class="ruby-identifier">date</span>
2774
- 517: <span class="ruby-keyword kw">end</span>
2775
- 518: [ <span class="ruby-identifier">t1</span>, <span class="ruby-identifier">t2</span> ]
2776
- 519: <span class="ruby-keyword kw">end</span></pre>
2777
- </div>
2778
-
2779
- </div>
2780
-
2781
-
2782
-
2783
-
2784
- </div>
2785
-
2786
-
2787
- </div>
2788
-
2789
-
2790
- </div>
2791
-
2792
-
2793
- <div id="rdoc-debugging-section-dump" class="debugging-section">
2794
-
2795
- <p>Disabled; run with --debug to generate this.</p>
2796
-
2797
- </div>
2798
-
2799
- <div id="validator-badges">
2800
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
2801
- <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
2802
- Rdoc Generator</a> 1.1.6</small>.</p>
2803
- </div>
2804
-
2805
- </body>
2806
- </html>
2807
-