taskjuggler 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/benchmarks/UTF-8-Strings.rb +58 -0
- data/data/css/tjmanual.css +52 -0
- data/data/css/tjreport.css +195 -0
- data/data/icons/details.png +0 -0
- data/data/icons/flag-green.png +0 -0
- data/data/icons/flag-red.png +0 -0
- data/data/icons/flag-yellow.png +0 -0
- data/data/icons/resource.png +0 -0
- data/data/icons/resourcegroup.png +0 -0
- data/data/icons/task.png +0 -0
- data/data/icons/taskgroup.png +0 -0
- data/data/icons/trend-down.png +0 -0
- data/data/icons/trend-flat.png +0 -0
- data/data/icons/trend-up.png +0 -0
- data/data/scripts/wz_tooltip.js +1301 -0
- data/doc/classes/AppConfig.html +298 -230
- data/doc/classes/Arguments.html +8 -8
- data/doc/classes/Object.html +7 -7
- data/doc/classes/String.html +89 -89
- data/doc/classes/TaskJuggler.html +396 -264
- data/doc/classes/TaskJuggler/Account.html +18 -18
- data/doc/classes/TaskJuggler/AccountAttribute.html +26 -26
- data/doc/classes/TaskJuggler/AccountScenario.html +12 -12
- data/doc/classes/TaskJuggler/Allocation.html +30 -30
- data/doc/classes/TaskJuggler/AllocationAttribute.html +26 -26
- data/doc/classes/TaskJuggler/AttributeBase.html +227 -115
- data/doc/classes/TaskJuggler/AttributeDefinition.html +6 -6
- data/doc/classes/TaskJuggler/BatchProcessor.html +117 -83
- data/doc/classes/TaskJuggler/Booking.html +18 -18
- data/doc/classes/TaskJuggler/BookingListAttribute.html +26 -26
- data/doc/classes/TaskJuggler/BooleanAttribute.html +26 -26
- data/doc/classes/TaskJuggler/CSVFile.html +24 -24
- data/doc/classes/TaskJuggler/CellSettingPattern.html +201 -0
- data/doc/classes/TaskJuggler/CellSettingPatternList.html +253 -0
- data/doc/classes/TaskJuggler/Charge.html +18 -18
- data/doc/classes/TaskJuggler/ChargeListAttribute.html +20 -20
- data/doc/classes/TaskJuggler/ChargeSet.html +37 -37
- data/doc/classes/TaskJuggler/ChargeSetListAttribute.html +26 -26
- data/doc/classes/TaskJuggler/ColumnListAttribute.html +20 -20
- data/doc/classes/TaskJuggler/ColumnTable.html +40 -40
- data/doc/classes/TaskJuggler/DateAttribute.html +54 -15
- data/doc/classes/TaskJuggler/DefinitionListAttribute.html +10 -10
- data/doc/classes/TaskJuggler/DependencyListAttribute.html +47 -47
- data/doc/classes/TaskJuggler/DurationAttribute.html +30 -30
- data/doc/classes/TaskJuggler/FixnumAttribute.html +20 -20
- data/doc/classes/TaskJuggler/FlagListAttribute.html +43 -43
- data/doc/classes/TaskJuggler/FloatAttribute.html +30 -30
- data/doc/classes/TaskJuggler/FormatListAttribute.html +21 -21
- data/doc/classes/TaskJuggler/GanttChart.html +48 -48
- data/doc/classes/TaskJuggler/GanttContainer.html +42 -42
- data/doc/classes/TaskJuggler/GanttHeader.html +12 -12
- data/doc/classes/TaskJuggler/GanttHeaderScaleItem.html +12 -12
- data/doc/classes/TaskJuggler/GanttLine.html +24 -24
- data/doc/classes/TaskJuggler/GanttLoadStack.html +18 -18
- data/doc/classes/TaskJuggler/GanttMilestone.html +42 -42
- data/doc/classes/TaskJuggler/GanttRouter.html +24 -24
- data/doc/classes/TaskJuggler/GanttTaskBar.html +42 -42
- data/doc/classes/TaskJuggler/HTMLDocument.html +13 -13
- data/doc/classes/TaskJuggler/HTMLGraphics.html +12 -12
- data/doc/classes/TaskJuggler/Interval.html +57 -57
- data/doc/classes/TaskJuggler/IntervalListAttribute.html +47 -47
- data/doc/classes/TaskJuggler/JobInfo.html +68 -12
- data/doc/classes/TaskJuggler/Journal.html +266 -20
- data/doc/classes/TaskJuggler/JournalEntry.html +79 -23
- data/doc/classes/TaskJuggler/JournalEntryList.html +454 -0
- data/doc/classes/TaskJuggler/KeywordArray.html +10 -10
- data/doc/classes/TaskJuggler/KeywordDocumentation.html +171 -170
- data/doc/classes/TaskJuggler/Limits.html +36 -36
- data/doc/classes/TaskJuggler/Limits/Limit.html +30 -30
- data/doc/classes/TaskJuggler/LimitsAttribute.html +40 -40
- data/doc/classes/TaskJuggler/ListAttributeBase.html +20 -20
- data/doc/classes/TaskJuggler/Log.html +145 -107
- data/doc/classes/TaskJuggler/LogicalAttribute.html +65 -36
- data/doc/classes/TaskJuggler/LogicalExpression.html +61 -24
- data/doc/classes/TaskJuggler/LogicalExpressionAttribute.html +20 -20
- data/doc/classes/TaskJuggler/LogicalFlag.html +31 -51
- data/doc/classes/TaskJuggler/LogicalFunction.html +64 -53
- data/doc/classes/TaskJuggler/LogicalOperation.html +103 -55
- data/doc/classes/TaskJuggler/Macro.html +6 -6
- data/doc/classes/TaskJuggler/MacroParser.html +36 -36
- data/doc/classes/TaskJuggler/MacroTable.html +37 -37
- data/doc/classes/TaskJuggler/Message.html +12 -12
- data/doc/classes/TaskJuggler/MessageHandler.html +32 -20
- data/doc/classes/TaskJuggler/Navigator.html +110 -46
- data/doc/classes/TaskJuggler/NavigatorElement.html +449 -0
- data/doc/classes/TaskJuggler/OnShiftCache.html +24 -24
- data/doc/classes/TaskJuggler/Project.html +1158 -893
- data/doc/classes/TaskJuggler/ProjectFileParser.html +94 -91
- data/doc/classes/TaskJuggler/PropertyAttribute.html +20 -20
- data/doc/classes/TaskJuggler/PropertyList.html +225 -155
- data/doc/classes/TaskJuggler/PropertySet.html +375 -332
- data/doc/classes/TaskJuggler/PropertyTreeNode.html +750 -510
- data/doc/classes/TaskJuggler/Query.html +404 -139
- data/doc/classes/TaskJuggler/{RTPNavigator.html → RTFNavigator.html} +57 -56
- data/doc/classes/TaskJuggler/RTFQuery.html +343 -0
- data/doc/classes/TaskJuggler/{RTPReport.html → RTFReport.html} +70 -67
- data/doc/classes/TaskJuggler/RealFormat.html +18 -18
- data/doc/classes/TaskJuggler/RealFormatAttribute.html +10 -10
- data/doc/classes/TaskJuggler/ReferenceAttribute.html +107 -40
- data/doc/classes/TaskJuggler/RemoteServiceManager.html +335 -0
- data/doc/classes/TaskJuggler/Report.html +66 -64
- data/doc/classes/TaskJuggler/ReportBase.html +112 -123
- data/doc/classes/TaskJuggler/ReportContext.html +43 -38
- data/doc/classes/TaskJuggler/ReportServer.html +320 -0
- data/doc/classes/TaskJuggler/ReportTable.html +42 -42
- data/doc/classes/TaskJuggler/ReportTableCell.html +221 -129
- data/doc/classes/TaskJuggler/ReportTableColumn.html +27 -27
- data/doc/classes/TaskJuggler/ReportTableLegend.html +24 -24
- data/doc/classes/TaskJuggler/ReportTableLine.html +126 -80
- data/doc/classes/TaskJuggler/Resource.html +12 -12
- data/doc/classes/TaskJuggler/ResourceListAttribute.html +82 -47
- data/doc/classes/TaskJuggler/ResourceListRE.html +43 -39
- data/doc/classes/TaskJuggler/ResourceScenario.html +413 -321
- data/doc/classes/TaskJuggler/RichText.html +64 -248
- data/doc/classes/TaskJuggler/RichTextAttribute.html +94 -30
- data/doc/classes/TaskJuggler/RichTextDocument.html +87 -85
- data/doc/classes/TaskJuggler/RichTextElement.html +456 -363
- data/doc/classes/TaskJuggler/RichTextException.html +13 -13
- data/doc/classes/TaskJuggler/{RichTextProtocolExample.html → RichTextFunctionExample.html} +64 -63
- data/doc/classes/TaskJuggler/{RichTextProtocolHandler.html → RichTextFunctionHandler.html} +42 -36
- data/doc/classes/TaskJuggler/RichTextIntermediate.html +563 -0
- data/doc/classes/TaskJuggler/RichTextParser.html +54 -51
- data/doc/classes/TaskJuggler/RichTextScanner.html +94 -92
- data/doc/classes/TaskJuggler/RichTextSnip.html +96 -60
- data/doc/classes/TaskJuggler/RichTextSyntaxRules.html +369 -227
- data/doc/classes/TaskJuggler/Scenario.html +6 -6
- data/doc/classes/TaskJuggler/ScenarioData.html +37 -37
- data/doc/classes/TaskJuggler/ScenarioListAttribute.html +31 -31
- data/doc/classes/TaskJuggler/Scoreboard.html +66 -66
- data/doc/classes/TaskJuggler/Shift.html +18 -18
- data/doc/classes/TaskJuggler/ShiftAssignment.html +54 -54
- data/doc/classes/TaskJuggler/ShiftAssignments.html +78 -78
- data/doc/classes/TaskJuggler/ShiftAssignmentsAttribute.html +40 -40
- data/doc/classes/TaskJuggler/ShiftScenario.html +24 -24
- data/doc/classes/TaskJuggler/SortListAttribute.html +22 -22
- data/doc/classes/TaskJuggler/SourceFileInfo.html +12 -12
- data/doc/classes/TaskJuggler/StringAttribute.html +30 -30
- data/doc/classes/TaskJuggler/SymbolAttribute.html +20 -20
- data/doc/classes/TaskJuggler/SyntaxReference.html +42 -42
- data/doc/classes/TaskJuggler/TOCEntry.html +12 -12
- data/doc/classes/TaskJuggler/TSResourceRecord.html +197 -0
- data/doc/classes/TaskJuggler/TSTaskRecord.html +215 -0
- data/doc/classes/TaskJuggler/TableColumnDefinition.html +64 -43
- data/doc/classes/TaskJuggler/TableOfContents.html +18 -18
- data/doc/classes/TaskJuggler/TableReport.html +447 -468
- data/doc/classes/TaskJuggler/Task.html +12 -12
- data/doc/classes/TaskJuggler/TaskDependency.html +12 -12
- data/doc/classes/TaskJuggler/TaskListAttribute.html +47 -47
- data/doc/classes/TaskJuggler/TaskListRE.html +43 -39
- data/doc/classes/TaskJuggler/TaskScenario.html +529 -282
- data/doc/classes/TaskJuggler/TextParser.html +215 -194
- data/doc/classes/TaskJuggler/TextParser/Pattern.html +97 -97
- data/doc/classes/TaskJuggler/TextParser/Rule.html +84 -84
- data/doc/classes/TaskJuggler/TextParser/StackElement.html +16 -15
- data/doc/classes/TaskJuggler/TextParser/TextParserResultArray.html +12 -12
- data/doc/classes/TaskJuggler/TextParser/TokenDoc.html +6 -6
- data/doc/classes/TaskJuggler/TextReport.html +77 -74
- data/doc/classes/TaskJuggler/TextScanner.html +294 -281
- data/doc/classes/TaskJuggler/TextScanner/BufferStreamHandle.html +70 -70
- data/doc/classes/TaskJuggler/TextScanner/FileStreamHandle.html +59 -60
- data/doc/classes/TaskJuggler/TextScanner/StreamHandle.html +12 -12
- data/doc/classes/TaskJuggler/TimeSheetReport.html +406 -0
- data/doc/classes/TaskJuggler/TjException.html +6 -6
- data/doc/classes/TaskJuggler/TjTime.html +522 -513
- data/doc/classes/TaskJuggler/TjpExample.html +25 -25
- data/doc/classes/TaskJuggler/TjpExportRE.html +21 -24
- data/doc/classes/TaskJuggler/TjpSyntaxRules.html +6177 -4318
- data/doc/classes/TaskJuggler/UserManual.html +212 -213
- data/doc/classes/TaskJuggler/WorkingHours.html +49 -49
- data/doc/classes/TaskJuggler/WorkingHoursAttribute.html +53 -53
- data/doc/classes/TaskJuggler/XMLBlob.html +21 -21
- data/doc/classes/TaskJuggler/XMLComment.html +21 -21
- data/doc/classes/TaskJuggler/XMLDocument.html +27 -26
- data/doc/classes/TaskJuggler/XMLElement.html +86 -50
- data/doc/classes/TaskJuggler/XMLNamedText.html +11 -11
- data/doc/classes/TaskJuggler/XMLText.html +36 -36
- data/doc/files/COPYING.html +1 -1
- data/doc/files/README.html +1 -1
- data/doc/files/lib/AccountScenario_rb.html +3 -2
- data/doc/files/lib/Account_rb.html +3 -2
- data/doc/files/lib/Allocation_rb.html +3 -2
- data/doc/files/lib/AppConfig_rb.html +5 -2
- data/doc/files/lib/AttributeBase_rb.html +3 -2
- data/doc/files/lib/AttributeDefinition_rb.html +3 -2
- data/doc/files/lib/Attributes_rb.html +3 -2
- data/doc/files/lib/BatchProcessor_rb.html +4 -3
- data/doc/files/lib/Booking_rb.html +3 -2
- data/doc/files/lib/ChargeSet_rb.html +3 -2
- data/doc/files/lib/Charge_rb.html +3 -2
- data/doc/files/lib/HTMLDocument_rb.html +3 -2
- data/doc/files/lib/Interval_rb.html +3 -2
- data/doc/files/lib/Journal_rb.html +4 -3
- data/doc/files/lib/KeywordArray_rb.html +3 -2
- data/doc/files/lib/KeywordDocumentation_rb.html +3 -2
- data/doc/files/lib/Limits_rb.html +3 -2
- data/doc/files/lib/Log_rb.html +3 -2
- data/doc/files/lib/LogicalExpression_rb.html +3 -2
- data/doc/files/lib/LogicalFunction_rb.html +3 -2
- data/doc/files/lib/LogicalOperation_rb.html +3 -2
- data/doc/files/lib/MacroParser_rb.html +3 -2
- data/doc/files/lib/MacroTable_rb.html +3 -2
- data/doc/files/lib/MessageHandler_rb.html +3 -2
- data/doc/files/lib/Message_rb.html +3 -2
- data/doc/files/lib/ProjectFileParser_rb.html +7 -4
- data/doc/files/lib/Project_rb.html +3 -2
- data/doc/files/lib/PropertyList_rb.html +3 -2
- data/doc/files/lib/PropertySet_rb.html +3 -2
- data/doc/files/lib/PropertyTreeNode_rb.html +3 -2
- data/doc/files/lib/Query_rb.html +3 -2
- data/doc/files/lib/{RTPNavigator_rb.html → RTFNavigator_rb.html} +8 -7
- data/doc/files/lib/RTFQuery_rb.html +121 -0
- data/doc/files/lib/{RTPReport_rb.html → RTFReport_rb.html} +8 -7
- data/doc/files/lib/RealFormat_rb.html +3 -2
- data/doc/files/lib/RemoteServiceManager_rb.html +117 -0
- data/doc/files/lib/ReportServer_rb.html +107 -0
- data/doc/files/lib/ResourceScenario_rb.html +3 -2
- data/doc/files/lib/Resource_rb.html +3 -2
- data/doc/files/lib/RichTextDocument_rb.html +4 -3
- data/doc/files/lib/RichTextElement_rb.html +3 -2
- data/doc/files/lib/{RichTextProtocolExample_rb.html → RichTextFunctionExample_rb.html} +8 -7
- data/doc/files/lib/{RichTextProtocolHandler_rb.html → RichTextFunctionHandler_rb.html} +7 -6
- data/doc/files/lib/RichTextParser_rb.html +3 -2
- data/doc/files/lib/RichTextScanner_rb.html +3 -2
- data/doc/files/lib/RichTextSnip_rb.html +3 -2
- data/doc/files/lib/RichTextSyntaxRules_rb.html +3 -2
- data/doc/files/lib/RichText_rb.html +3 -2
- data/doc/files/lib/ScenarioData_rb.html +3 -2
- data/doc/files/lib/Scenario_rb.html +3 -2
- data/doc/files/lib/Scoreboard_rb.html +3 -2
- data/doc/files/lib/ShiftAssignments_rb.html +3 -2
- data/doc/files/lib/ShiftScenario_rb.html +3 -2
- data/doc/files/lib/Shift_rb.html +3 -2
- data/doc/files/lib/SourceFileInfo_rb.html +3 -2
- data/doc/files/lib/SyntaxReference_rb.html +3 -2
- data/doc/files/lib/TOCEntry_rb.html +3 -2
- data/doc/files/lib/TableColumnDefinition_rb.html +3 -2
- data/doc/files/lib/TableOfContents_rb.html +3 -2
- data/doc/files/lib/TaskDependency_rb.html +3 -2
- data/doc/files/lib/TaskJuggler_rb.html +7 -2
- data/doc/files/lib/TaskScenario_rb.html +3 -2
- data/doc/files/lib/Task_rb.html +3 -2
- data/doc/files/lib/TextParser/Pattern_rb.html +4 -3
- data/doc/files/lib/TextParser/Rule_rb.html +4 -3
- data/doc/files/lib/TextParser/StackElement_rb.html +4 -3
- data/doc/files/lib/TextParser/TokenDoc_rb.html +4 -3
- data/doc/files/lib/TextParser_rb.html +3 -2
- data/doc/files/lib/TextScanner_rb.html +3 -2
- data/doc/files/lib/Tj3Config_rb.html +3 -2
- data/doc/files/lib/TjException_rb.html +3 -2
- data/doc/files/lib/TjTime_rb.html +3 -2
- data/doc/files/lib/TjpExample_rb.html +3 -2
- data/doc/files/lib/TjpSyntaxRules_rb.html +3 -2
- data/doc/files/lib/UTF8String_rb.html +14 -6
- data/doc/files/lib/UserManual_rb.html +6 -3
- data/doc/files/lib/WorkingHours_rb.html +3 -2
- data/doc/files/lib/XMLDocument_rb.html +3 -2
- data/doc/files/lib/XMLElement_rb.html +3 -2
- data/doc/files/lib/deep_copy_rb.html +3 -2
- data/doc/files/lib/reports/CSVFile_rb.html +3 -2
- data/doc/files/lib/reports/ColumnTable_rb.html +3 -2
- data/doc/files/lib/reports/GanttChart_rb.html +3 -2
- data/doc/files/lib/reports/GanttContainer_rb.html +3 -2
- data/doc/files/lib/reports/GanttHeaderScaleItem_rb.html +3 -2
- data/doc/files/lib/reports/GanttHeader_rb.html +3 -2
- data/doc/files/lib/reports/GanttLine_rb.html +3 -2
- data/doc/files/lib/reports/GanttLoadStack_rb.html +3 -2
- data/doc/files/lib/reports/GanttMilestone_rb.html +3 -2
- data/doc/files/lib/reports/GanttRouter_rb.html +3 -2
- data/doc/files/lib/reports/GanttTaskBar_rb.html +3 -2
- data/doc/files/lib/reports/HTMLGraphics_rb.html +3 -2
- data/doc/files/lib/reports/Navigator_rb.html +3 -2
- data/doc/files/lib/reports/ReportBase_rb.html +3 -2
- data/doc/files/lib/reports/ReportContext_rb.html +3 -2
- data/doc/files/lib/reports/ReportTableCell_rb.html +3 -2
- data/doc/files/lib/reports/ReportTableColumn_rb.html +3 -2
- data/doc/files/lib/reports/ReportTableLegend_rb.html +3 -2
- data/doc/files/lib/reports/ReportTableLine_rb.html +3 -2
- data/doc/files/lib/reports/ReportTable_rb.html +3 -2
- data/doc/files/lib/reports/Report_rb.html +7 -2
- data/doc/files/lib/reports/ResourceListRE_rb.html +3 -2
- data/doc/files/lib/reports/TableReport_rb.html +3 -2
- data/doc/files/lib/reports/TaskListRE_rb.html +3 -2
- data/doc/files/lib/reports/TextReport_rb.html +4 -3
- data/doc/files/lib/reports/TimeSheetReport_rb.html +117 -0
- data/doc/files/lib/reports/TjpExportRE_rb.html +3 -2
- data/doc/files/lib/taskjuggler3_rb.html +94 -77
- data/doc/files/lib/tj3client_rb.html +280 -0
- data/doc/files/lib/tj3man_rb.html +10 -9
- data/doc/fr_class_index.html +27 -5
- data/doc/fr_file_index.html +15 -7
- data/doc/fr_method_index.html +1312 -1020
- data/examples/tutorial.tjp +113 -14
- data/gem_spec.rb +2 -1
- data/lib/Account.rb +1 -1
- data/lib/AccountScenario.rb +1 -1
- data/lib/Allocation.rb +1 -1
- data/lib/AppConfig.rb +23 -10
- data/lib/AttributeBase.rb +34 -6
- data/lib/AttributeDefinition.rb +1 -1
- data/lib/Attributes.rb +51 -16
- data/lib/BatchProcessor.rb +204 -77
- data/lib/Booking.rb +1 -1
- data/lib/Charge.rb +1 -1
- data/lib/ChargeSet.rb +1 -1
- data/lib/HTMLDocument.rb +2 -2
- data/lib/Interval.rb +1 -1
- data/lib/Journal.rb +231 -9
- data/lib/KeywordArray.rb +1 -1
- data/lib/KeywordDocumentation.rb +6 -4
- data/lib/Limits.rb +1 -1
- data/lib/Log.rb +8 -1
- data/lib/LogicalExpression.rb +14 -13
- data/lib/LogicalFunction.rb +88 -14
- data/lib/LogicalOperation.rb +124 -53
- data/lib/MacroParser.rb +1 -1
- data/lib/MacroTable.rb +2 -2
- data/lib/Message.rb +1 -1
- data/lib/MessageHandler.rb +7 -3
- data/lib/Project.rb +93 -14
- data/lib/ProjectFileParser.rb +30 -15
- data/lib/PropertyList.rb +103 -36
- data/lib/PropertySet.rb +22 -10
- data/lib/PropertyTreeNode.rb +120 -15
- data/lib/Query.rb +119 -48
- data/lib/{RTPNavigator.rb → RTFNavigator.rb} +11 -10
- data/lib/RTFQuery.rb +166 -0
- data/lib/{RTPReport.rb → RTFReport.rb} +11 -8
- data/lib/RealFormat.rb +1 -1
- data/lib/RemoteServiceManager.rb +80 -0
- data/lib/ReportServer.rb +66 -0
- data/lib/Resource.rb +1 -1
- data/lib/ResourceScenario.rb +48 -19
- data/lib/RichText.rb +98 -41
- data/lib/RichTextDocument.rb +10 -8
- data/lib/RichTextElement.rb +72 -28
- data/lib/{RichTextProtocolExample.rb → RichTextFunctionExample.rb} +8 -7
- data/lib/{RichTextProtocolHandler.rb → RichTextFunctionHandler.rb} +12 -14
- data/lib/RichTextParser.rb +6 -3
- data/lib/RichTextScanner.rb +91 -19
- data/lib/RichTextSnip.rb +8 -3
- data/lib/RichTextSyntaxRules.rb +103 -45
- data/lib/Scenario.rb +1 -1
- data/lib/ScenarioData.rb +2 -2
- data/lib/Scoreboard.rb +1 -1
- data/lib/Shift.rb +1 -1
- data/lib/ShiftAssignments.rb +1 -1
- data/lib/ShiftScenario.rb +1 -1
- data/lib/SourceFileInfo.rb +1 -1
- data/lib/SyntaxReference.rb +2 -2
- data/lib/TOCEntry.rb +1 -1
- data/lib/TableColumnDefinition.rb +59 -16
- data/lib/TableOfContents.rb +1 -1
- data/lib/Task.rb +1 -1
- data/lib/TaskDependency.rb +1 -1
- data/lib/TaskJuggler.rb +31 -8
- data/lib/TaskScenario.rb +165 -16
- data/lib/TextParser.rb +36 -22
- data/lib/TextParser/Pattern.rb +3 -3
- data/lib/TextParser/Rule.rb +2 -2
- data/lib/TextParser/StackElement.rb +4 -3
- data/lib/TextParser/TokenDoc.rb +2 -2
- data/lib/TextScanner.rb +52 -37
- data/lib/Tj3Config.rb +6 -5
- data/lib/TjException.rb +1 -1
- data/lib/TjTime.rb +12 -3
- data/lib/TjpExample.rb +1 -1
- data/lib/TjpSyntaxRules.rb +1044 -150
- data/lib/UTF8String.rb +2 -1
- data/lib/UserManual.rb +18 -70
- data/lib/WorkingHours.rb +3 -3
- data/lib/XMLDocument.rb +3 -2
- data/lib/XMLElement.rb +6 -1
- data/lib/deep_copy.rb +1 -1
- data/lib/reports/CSVFile.rb +1 -1
- data/lib/reports/ColumnTable.rb +9 -9
- data/lib/reports/GanttChart.rb +1 -1
- data/lib/reports/GanttContainer.rb +1 -1
- data/lib/reports/GanttHeader.rb +1 -1
- data/lib/reports/GanttHeaderScaleItem.rb +1 -1
- data/lib/reports/GanttLine.rb +40 -40
- data/lib/reports/GanttLoadStack.rb +1 -1
- data/lib/reports/GanttMilestone.rb +1 -1
- data/lib/reports/GanttRouter.rb +1 -1
- data/lib/reports/GanttTaskBar.rb +1 -1
- data/lib/reports/HTMLGraphics.rb +1 -1
- data/lib/reports/Navigator.rb +149 -22
- data/lib/reports/Report.rb +115 -172
- data/lib/reports/ReportBase.rb +22 -27
- data/lib/reports/ReportContext.rb +29 -15
- data/lib/reports/ReportTable.rb +1 -1
- data/lib/reports/ReportTableCell.rb +120 -27
- data/lib/reports/ReportTableColumn.rb +3 -3
- data/lib/reports/ReportTableLegend.rb +1 -1
- data/lib/reports/ReportTableLine.rb +10 -2
- data/lib/reports/ResourceListRE.rb +5 -1
- data/lib/reports/TableReport.rb +237 -287
- data/lib/reports/TaskListRE.rb +5 -1
- data/lib/reports/TextReport.rb +7 -4
- data/lib/reports/TimeSheetReport.rb +233 -0
- data/lib/reports/TjpExportRE.rb +2 -2
- data/lib/taskjuggler3.rb +27 -11
- data/lib/tj3client.rb +110 -0
- data/lib/tj3man.rb +4 -4
- data/manual/Getting_Started +0 -50
- data/manual/How_To_Contribute +6 -13
- data/manual/Installation +102 -28
- data/manual/Intro +11 -1
- data/manual/Reporting_Bugs +23 -7
- data/manual/Rich_Text_Attributes +59 -6
- data/manual/TaskJuggler_2x_Migration +27 -0
- data/manual/The_TaskJuggler_Syntax +104 -0
- data/manual/Tutorial +10 -9
- data/prj_cfg.rb +8 -2
- data/tasks/csts.rake +1 -1
- data/tasks/manual.rake +5 -3
- data/test/MessageChecker.rb +1 -1
- data/test/TestSuite/HTML-Reports/Alerts.html +172 -0
- data/test/TestSuite/HTML-Reports/Alerts.tjp +77 -0
- data/test/TestSuite/HTML-Reports/CellText.html +758 -0
- data/test/TestSuite/HTML-Reports/CellText.tjp +75 -0
- data/test/TestSuite/HTML-Reports/ColumnPeriods.html +156 -0
- data/test/TestSuite/HTML-Reports/ColumnPeriods.tjp +44 -0
- data/test/TestSuite/HTML-Reports/IsOngoing.html +172 -0
- data/test/TestSuite/HTML-Reports/IsOngoing.tjp +34 -0
- data/test/TestSuite/HTML-Reports/LogicalFunctions.html +80 -0
- data/test/TestSuite/HTML-Reports/LogicalFunctions.tjp +20 -0
- data/test/TestSuite/HTML-Reports/Query.html +31 -0
- data/test/TestSuite/HTML-Reports/Query.tjp +28 -0
- data/test/TestSuite/HTML-Reports/Sorting.tjp +68 -0
- data/test/TestSuite/HTML-Reports/TimeSheet.tjp +69 -0
- data/test/TestSuite/HTML-Reports/UDAQuery.tjp +27 -0
- data/test/TestSuite/HTML-Reports/css/tjmanual.css +52 -0
- data/test/TestSuite/HTML-Reports/css/tjreport.css +195 -0
- data/test/TestSuite/HTML-Reports/depArrows.html +842 -0
- data/test/TestSuite/HTML-Reports/icons/details.png +0 -0
- data/test/TestSuite/HTML-Reports/icons/flag-green.png +0 -0
- data/test/TestSuite/HTML-Reports/icons/flag-red.png +0 -0
- data/test/TestSuite/HTML-Reports/icons/flag-yellow.png +0 -0
- data/test/TestSuite/HTML-Reports/icons/resource.png +0 -0
- data/test/TestSuite/HTML-Reports/icons/resourcegroup.png +0 -0
- data/test/TestSuite/HTML-Reports/icons/task.png +0 -0
- data/test/TestSuite/HTML-Reports/icons/taskgroup.png +0 -0
- data/test/TestSuite/HTML-Reports/reference.tjp +7 -8
- data/test/TestSuite/HTML-Reports/scripts/scripts/wz_tooltip.js +1301 -0
- data/test/TestSuite/HTML-Reports/scripts/wz_tooltip.js +1301 -0
- data/test/TestSuite/Scheduler/Correct/Mandatory.tjp +34 -0
- data/test/TestSuite/Syntax/Correct/Celltext.tjp +2 -1
- data/test/TestSuite/Syntax/Correct/Journal.tjp +2 -2
- data/test/TestSuite/Syntax/Correct/LogicalExpression.tjp +2 -1
- data/test/TestSuite/Syntax/Correct/LogicalFunction.tjp +20 -0
- data/test/TestSuite/Syntax/Correct/Query.tjp +18 -0
- data/test/TestSuite/Syntax/Correct/StatusSheet.tjp +45 -0
- data/test/TestSuite/Syntax/Correct/TimeSheet.tjp +49 -0
- data/test/TestSuite/Syntax/Correct/icons/details.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/flag-green.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/flag-red.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/flag-yellow.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/resource.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/resourcegroup.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/task.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/taskgroup.png +0 -0
- data/test/TestSuite/Syntax/Correct/scripts/wz_tooltip.js +1301 -0
- data/test/TestSuite/Syntax/Correct/tutorial.tjp +113 -14
- data/test/TestSuite/Syntax/Errors/macro_stack_overflow.tjp +28 -0
- data/test/TestSuite/Syntax/Errors/unsupported_token.tjp +12 -0
- data/test/all.rb +2 -2
- data/test/test_BatchProcessor.rb +42 -13
- data/test/test_CSV-Reports.rb +1 -1
- data/test/test_Journal.rb +176 -0
- data/test/test_Limits.rb +1 -1
- data/test/test_LogicalExpression.rb +14 -5
- data/test/test_MacroTable.rb +1 -1
- data/test/test_Project.rb +1 -1
- data/test/test_PropertySet.rb +1 -1
- data/test/test_Query.rb +1 -1
- data/test/test_RealFormat.rb +1 -1
- data/test/test_RichText.rb +30 -20
- data/test/test_Scheduler.rb +1 -1
- data/test/test_ShiftAssignments.rb +2 -2
- data/test/test_Syntax.rb +1 -1
- data/test/test_TextScanner.rb +1 -1
- data/test/test_TjTime.rb +1 -1
- data/test/test_TjpExample.rb +1 -1
- data/test/test_UTF8String.rb +1 -1
- data/test/test_WorkingHours.rb +1 -1
- data/test/test_deep_copy.rb +2 -2
- metadata +610 -532
- data/doc/files/lib/ms_test_rb.html +0 -90
- data/examples/ContactList.html +0 -1467
- data/examples/Deliveries.html +0 -485
- data/examples/Development.html +0 -2525
- data/examples/Overview.html +0 -747
- data/examples/Resource Graph.html +0 -616
- data/lib/ms_test.rb +0 -27
- data/test/TestSuite/HTML-Reports/reference-export.html +0 -187
|
@@ -99,9 +99,9 @@ containing the results of a repeatable rule.
|
|
|
99
99
|
|
|
100
100
|
<div class="name-list">
|
|
101
101
|
|
|
102
|
-
<a href="#
|
|
102
|
+
<a href="#M000546"><<</a>
|
|
103
103
|
|
|
104
|
-
<a href="#
|
|
104
|
+
<a href="#M000545">new</a>
|
|
105
105
|
|
|
106
106
|
</div>
|
|
107
107
|
</div>
|
|
@@ -122,12 +122,12 @@ containing the results of a repeatable rule.
|
|
|
122
122
|
<h3 class="section-bar">Public Class methods</h3>
|
|
123
123
|
|
|
124
124
|
|
|
125
|
-
<div id="method-
|
|
126
|
-
<a name="
|
|
125
|
+
<div id="method-M000545" class="method-detail">
|
|
126
|
+
<a name="M000545"></a>
|
|
127
127
|
|
|
128
128
|
<div class="method-heading">
|
|
129
129
|
|
|
130
|
-
<a href="#
|
|
130
|
+
<a href="#M000545" class="method-signature">
|
|
131
131
|
|
|
132
132
|
<span class="method-name">new</span><span class="method-args">()</span>
|
|
133
133
|
|
|
@@ -138,8 +138,8 @@ containing the results of a repeatable rule.
|
|
|
138
138
|
<div class="method-description">
|
|
139
139
|
|
|
140
140
|
<p><a class="source-toggle" href="#"
|
|
141
|
-
onclick="toggleCode('
|
|
142
|
-
<div class="method-source-code" id="
|
|
141
|
+
onclick="toggleCode('M000545-source');return false;">[Source]</a></p>
|
|
142
|
+
<div class="method-source-code" id="M000545-source">
|
|
143
143
|
<pre>
|
|
144
144
|
<span class="ruby-comment cmt"># File lib/TextParser.rb, line 49</span>
|
|
145
145
|
49: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
|
|
@@ -155,12 +155,12 @@ containing the results of a repeatable rule.
|
|
|
155
155
|
<h3 class="section-bar">Public Instance methods</h3>
|
|
156
156
|
|
|
157
157
|
|
|
158
|
-
<div id="method-
|
|
159
|
-
<a name="
|
|
158
|
+
<div id="method-M000546" class="method-detail">
|
|
159
|
+
<a name="M000546"></a>
|
|
160
160
|
|
|
161
161
|
<div class="method-heading">
|
|
162
162
|
|
|
163
|
-
<a href="#
|
|
163
|
+
<a href="#M000546" class="method-signature">
|
|
164
164
|
|
|
165
165
|
<span class="method-name"><<</span><span class="method-args">(arg)</span>
|
|
166
166
|
|
|
@@ -178,8 +178,8 @@ Array.
|
|
|
178
178
|
</p>
|
|
179
179
|
|
|
180
180
|
<p><a class="source-toggle" href="#"
|
|
181
|
-
onclick="toggleCode('
|
|
182
|
-
<div class="method-source-code" id="
|
|
181
|
+
onclick="toggleCode('M000546-source');return false;">[Source]</a></p>
|
|
182
|
+
<div class="method-source-code" id="M000546-source">
|
|
183
183
|
<pre>
|
|
184
184
|
<span class="ruby-comment cmt"># File lib/TextParser.rb, line 57</span>
|
|
185
185
|
57: <span class="ruby-keyword kw">def</span> <span class="ruby-operator"><<</span>(<span class="ruby-identifier">arg</span>)
|
|
@@ -104,7 +104,7 @@ and a reference to a specific pattern are optional.
|
|
|
104
104
|
|
|
105
105
|
<div class="name-list">
|
|
106
106
|
|
|
107
|
-
<a href="#
|
|
107
|
+
<a href="#M000577">new</a>
|
|
108
108
|
|
|
109
109
|
</div>
|
|
110
110
|
</div>
|
|
@@ -167,12 +167,12 @@ and a reference to a specific pattern are optional.
|
|
|
167
167
|
<h3 class="section-bar">Public Class methods</h3>
|
|
168
168
|
|
|
169
169
|
|
|
170
|
-
<div id="method-
|
|
171
|
-
<a name="
|
|
170
|
+
<div id="method-M000577" class="method-detail">
|
|
171
|
+
<a name="M000577"></a>
|
|
172
172
|
|
|
173
173
|
<div class="method-heading">
|
|
174
174
|
|
|
175
|
-
<a href="#
|
|
175
|
+
<a href="#M000577" class="method-signature">
|
|
176
176
|
|
|
177
177
|
<span class="method-name">new</span><span class="method-args">(name, arg)</span>
|
|
178
178
|
|
|
@@ -188,8 +188,8 @@ Strings that hold the name and textual description of the parser token.
|
|
|
188
188
|
</p>
|
|
189
189
|
|
|
190
190
|
<p><a class="source-toggle" href="#"
|
|
191
|
-
onclick="toggleCode('
|
|
192
|
-
<div class="method-source-code" id="
|
|
191
|
+
onclick="toggleCode('M000577-source');return false;">[Source]</a></p>
|
|
192
|
+
<div class="method-source-code" id="M000577-source">
|
|
193
193
|
<pre>
|
|
194
194
|
<span class="ruby-comment cmt"># File lib/TextParser/TokenDoc.rb, line 25</span>
|
|
195
195
|
25: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">arg</span>)
|
|
@@ -104,13 +104,13 @@ footer and a central text with margin elements left and right.
|
|
|
104
104
|
|
|
105
105
|
<div class="name-list">
|
|
106
106
|
|
|
107
|
-
<a href="#
|
|
107
|
+
<a href="#M000394">generateIntermediateFormat</a>
|
|
108
108
|
|
|
109
|
-
<a href="#
|
|
109
|
+
<a href="#M000393">new</a>
|
|
110
110
|
|
|
111
|
-
<a href="#
|
|
111
|
+
<a href="#M000396">to_csv</a>
|
|
112
112
|
|
|
113
|
-
<a href="#
|
|
113
|
+
<a href="#M000395">to_html</a>
|
|
114
114
|
|
|
115
115
|
</div>
|
|
116
116
|
</div>
|
|
@@ -181,12 +181,12 @@ footer and a central text with margin elements left and right.
|
|
|
181
181
|
<h3 class="section-bar">Public Class methods</h3>
|
|
182
182
|
|
|
183
183
|
|
|
184
|
-
<div id="method-
|
|
185
|
-
<a name="
|
|
184
|
+
<div id="method-M000393" class="method-detail">
|
|
185
|
+
<a name="M000393"></a>
|
|
186
186
|
|
|
187
187
|
<div class="method-heading">
|
|
188
188
|
|
|
189
|
-
<a href="#
|
|
189
|
+
<a href="#M000393" class="method-signature">
|
|
190
190
|
|
|
191
191
|
<span class="method-name">new</span><span class="method-args">(report)</span>
|
|
192
192
|
|
|
@@ -197,8 +197,8 @@ footer and a central text with margin elements left and right.
|
|
|
197
197
|
<div class="method-description">
|
|
198
198
|
|
|
199
199
|
<p><a class="source-toggle" href="#"
|
|
200
|
-
onclick="toggleCode('
|
|
201
|
-
<div class="method-source-code" id="
|
|
200
|
+
onclick="toggleCode('M000393-source');return false;">[Source]</a></p>
|
|
201
|
+
<div class="method-source-code" id="M000393-source">
|
|
202
202
|
<pre>
|
|
203
203
|
<span class="ruby-comment cmt"># File lib/reports/TextReport.rb, line 24</span>
|
|
204
204
|
24: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">report</span>)
|
|
@@ -216,12 +216,12 @@ footer and a central text with margin elements left and right.
|
|
|
216
216
|
<h3 class="section-bar">Public Instance methods</h3>
|
|
217
217
|
|
|
218
218
|
|
|
219
|
-
<div id="method-
|
|
220
|
-
<a name="
|
|
219
|
+
<div id="method-M000394" class="method-detail">
|
|
220
|
+
<a name="M000394"></a>
|
|
221
221
|
|
|
222
222
|
<div class="method-heading">
|
|
223
223
|
|
|
224
|
-
<a href="#
|
|
224
|
+
<a href="#M000394" class="method-signature">
|
|
225
225
|
|
|
226
226
|
<span class="method-name">generateIntermediateFormat</span><span class="method-args">()</span>
|
|
227
227
|
|
|
@@ -232,34 +232,36 @@ footer and a central text with margin elements left and right.
|
|
|
232
232
|
<div class="method-description">
|
|
233
233
|
|
|
234
234
|
<p><a class="source-toggle" href="#"
|
|
235
|
-
onclick="toggleCode('
|
|
236
|
-
<div class="method-source-code" id="
|
|
235
|
+
onclick="toggleCode('M000394-source');return false;">[Source]</a></p>
|
|
236
|
+
<div class="method-source-code" id="M000394-source">
|
|
237
237
|
<pre>
|
|
238
238
|
<span class="ruby-comment cmt"># File lib/reports/TextReport.rb, line 30</span>
|
|
239
239
|
30: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateIntermediateFormat</span>
|
|
240
|
-
31: <span class="ruby-keyword kw">
|
|
241
|
-
32:
|
|
242
|
-
33:
|
|
243
|
-
34:
|
|
244
|
-
35:
|
|
245
|
-
36: <span class="ruby-ivar">@
|
|
246
|
-
37:
|
|
247
|
-
38:
|
|
240
|
+
31: <span class="ruby-keyword kw">super</span>
|
|
241
|
+
32:
|
|
242
|
+
33: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'center'</span>)
|
|
243
|
+
34: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'left'</span>) <span class="ruby-operator">&&</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'right'</span>)
|
|
244
|
+
35: <span class="ruby-ivar">@lWidth</span> = <span class="ruby-ivar">@rWidth</span> = <span class="ruby-value">20</span>
|
|
245
|
+
36: <span class="ruby-ivar">@cWidth</span> = <span class="ruby-value">60</span>
|
|
246
|
+
37: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'left'</span>) <span class="ruby-operator">&&</span> <span class="ruby-operator">!</span><span class="ruby-identifier">a</span>(<span class="ruby-value str">'right'</span>)
|
|
247
|
+
38: <span class="ruby-ivar">@lWidth</span> = <span class="ruby-value">25</span>
|
|
248
248
|
39: <span class="ruby-ivar">@cWidth</span> = <span class="ruby-value">75</span>
|
|
249
|
-
40:
|
|
250
|
-
41:
|
|
251
|
-
42: <span class="ruby-ivar">@
|
|
252
|
-
43: <span class="ruby-keyword kw">
|
|
253
|
-
44:
|
|
254
|
-
45: <span class="ruby-keyword kw">
|
|
255
|
-
46:
|
|
256
|
-
47: <span class="ruby-keyword kw">
|
|
257
|
-
48: <span class="ruby-ivar">@lWidth</span> = <span class="ruby-value">
|
|
258
|
-
49: <span class="ruby-keyword kw">elsif</span> <span class="ruby-
|
|
259
|
-
50: <span class="ruby-ivar">@
|
|
260
|
-
51: <span class="ruby-keyword kw">
|
|
261
|
-
52:
|
|
262
|
-
53:
|
|
249
|
+
40: <span class="ruby-keyword kw">elsif</span> <span class="ruby-operator">!</span><span class="ruby-identifier">a</span>(<span class="ruby-value str">'left'</span>) <span class="ruby-operator">&&</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'right'</span>)
|
|
250
|
+
41: <span class="ruby-ivar">@cWidth</span> = <span class="ruby-value">75</span>
|
|
251
|
+
42: <span class="ruby-ivar">@rWidth</span> = <span class="ruby-value">25</span>
|
|
252
|
+
43: <span class="ruby-keyword kw">else</span>
|
|
253
|
+
44: <span class="ruby-ivar">@cWidth</span> = <span class="ruby-value">100</span>
|
|
254
|
+
45: <span class="ruby-keyword kw">end</span>
|
|
255
|
+
46: <span class="ruby-keyword kw">else</span>
|
|
256
|
+
47: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'left'</span>) <span class="ruby-operator">&&</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'right'</span>)
|
|
257
|
+
48: <span class="ruby-ivar">@lWidth</span> = <span class="ruby-ivar">@rWidth</span> = <span class="ruby-value">50</span>
|
|
258
|
+
49: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'left'</span>) <span class="ruby-operator">&&</span> <span class="ruby-operator">!</span><span class="ruby-identifier">a</span>(<span class="ruby-value str">'right'</span>)
|
|
259
|
+
50: <span class="ruby-ivar">@lWidth</span> = <span class="ruby-value">100</span>
|
|
260
|
+
51: <span class="ruby-keyword kw">elsif</span> <span class="ruby-operator">!</span><span class="ruby-identifier">a</span>(<span class="ruby-value str">'left'</span>) <span class="ruby-operator">&&</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'right'</span>)
|
|
261
|
+
52: <span class="ruby-ivar">@rWidth</span> = <span class="ruby-value">100</span>
|
|
262
|
+
53: <span class="ruby-keyword kw">end</span>
|
|
263
|
+
54: <span class="ruby-keyword kw">end</span>
|
|
264
|
+
55: <span class="ruby-keyword kw">end</span>
|
|
263
265
|
</pre>
|
|
264
266
|
</div>
|
|
265
267
|
|
|
@@ -267,12 +269,12 @@ footer and a central text with margin elements left and right.
|
|
|
267
269
|
</div>
|
|
268
270
|
|
|
269
271
|
|
|
270
|
-
<div id="method-
|
|
271
|
-
<a name="
|
|
272
|
+
<div id="method-M000396" class="method-detail">
|
|
273
|
+
<a name="M000396"></a>
|
|
272
274
|
|
|
273
275
|
<div class="method-heading">
|
|
274
276
|
|
|
275
|
-
<a href="#
|
|
277
|
+
<a href="#M000396" class="method-signature">
|
|
276
278
|
|
|
277
279
|
<span class="method-name">to_csv</span><span class="method-args">()</span>
|
|
278
280
|
|
|
@@ -283,13 +285,13 @@ footer and a central text with margin elements left and right.
|
|
|
283
285
|
<div class="method-description">
|
|
284
286
|
|
|
285
287
|
<p><a class="source-toggle" href="#"
|
|
286
|
-
onclick="toggleCode('
|
|
287
|
-
<div class="method-source-code" id="
|
|
288
|
+
onclick="toggleCode('M000396-source');return false;">[Source]</a></p>
|
|
289
|
+
<div class="method-source-code" id="M000396-source">
|
|
288
290
|
<pre>
|
|
289
|
-
<span class="ruby-comment cmt"># File lib/reports/TextReport.rb, line
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
291
|
+
<span class="ruby-comment cmt"># File lib/reports/TextReport.rb, line 83</span>
|
|
292
|
+
83: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_csv</span>
|
|
293
|
+
84: <span class="ruby-keyword kw">nil</span>
|
|
294
|
+
85: <span class="ruby-keyword kw">end</span>
|
|
293
295
|
</pre>
|
|
294
296
|
</div>
|
|
295
297
|
|
|
@@ -297,12 +299,12 @@ footer and a central text with margin elements left and right.
|
|
|
297
299
|
</div>
|
|
298
300
|
|
|
299
301
|
|
|
300
|
-
<div id="method-
|
|
301
|
-
<a name="
|
|
302
|
+
<div id="method-M000395" class="method-detail">
|
|
303
|
+
<a name="M000395"></a>
|
|
302
304
|
|
|
303
305
|
<div class="method-heading">
|
|
304
306
|
|
|
305
|
-
<a href="#
|
|
307
|
+
<a href="#M000395" class="method-signature">
|
|
306
308
|
|
|
307
309
|
<span class="method-name">to_html</span><span class="method-args">()</span>
|
|
308
310
|
|
|
@@ -313,34 +315,35 @@ footer and a central text with margin elements left and right.
|
|
|
313
315
|
<div class="method-description">
|
|
314
316
|
|
|
315
317
|
<p><a class="source-toggle" href="#"
|
|
316
|
-
onclick="toggleCode('
|
|
317
|
-
<div class="method-source-code" id="
|
|
318
|
+
onclick="toggleCode('M000395-source');return false;">[Source]</a></p>
|
|
319
|
+
<div class="method-source-code" id="M000395-source">
|
|
318
320
|
<pre>
|
|
319
|
-
<span class="ruby-comment cmt"># File lib/reports/TextReport.rb, line
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
74: <span class="ruby-keyword kw">end</span>
|
|
340
|
-
75: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">rt_to_html</span>(<span class="ruby-value str">'footer'</span>)
|
|
321
|
+
<span class="ruby-comment cmt"># File lib/reports/TextReport.rb, line 57</span>
|
|
322
|
+
57: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_html</span>
|
|
323
|
+
58: <span class="ruby-identifier">html</span> = []
|
|
324
|
+
59:
|
|
325
|
+
60: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">rt_to_html</span>(<span class="ruby-value str">'header'</span>)
|
|
326
|
+
61: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@lWidth</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@cWidth</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@rWidth</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
327
|
+
62: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">table</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
|
|
328
|
+
63: <span class="ruby-value str">'cellspacing'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'1'</span>,
|
|
329
|
+
64: <span class="ruby-value str">'cellpadding'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'2'</span>, <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'100%'</span>,
|
|
330
|
+
65: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'textPageSkel'</span>))
|
|
331
|
+
66: <span class="ruby-identifier">table</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
|
|
332
|
+
67:
|
|
333
|
+
68: <span class="ruby-node">%w( left center right)</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
|
334
|
+
69: <span class="ruby-identifier">width</span> = <span class="ruby-identifier">instance_variable_get</span>(<span class="ruby-value str">'@'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">i</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">chr</span> <span class="ruby-operator">+</span> <span class="ruby-value str">'Width'</span>)
|
|
335
|
+
70: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">width</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
336
|
+
71: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-node">"#{width}%"</span>,
|
|
337
|
+
72: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'vertical-align:top'</span>))
|
|
338
|
+
73: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">el</span> = <span class="ruby-identifier">rt_to_html</span>(<span class="ruby-identifier">i</span>))
|
|
339
|
+
74: <span class="ruby-keyword kw">end</span>
|
|
340
|
+
75: <span class="ruby-keyword kw">end</span>
|
|
341
341
|
76:
|
|
342
|
-
77: <span class="ruby-
|
|
343
|
-
78:
|
|
342
|
+
77: <span class="ruby-keyword kw">end</span>
|
|
343
|
+
78: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">rt_to_html</span>(<span class="ruby-value str">'footer'</span>)
|
|
344
|
+
79:
|
|
345
|
+
80: <span class="ruby-identifier">html</span>
|
|
346
|
+
81: <span class="ruby-keyword kw">end</span>
|
|
344
347
|
</pre>
|
|
345
348
|
</div>
|
|
346
349
|
|
|
@@ -104,33 +104,33 @@ file can include an other file.
|
|
|
104
104
|
|
|
105
105
|
<div class="name-list">
|
|
106
106
|
|
|
107
|
-
<a href="#
|
|
107
|
+
<a href="#M000476">addMacro</a>
|
|
108
108
|
|
|
109
|
-
<a href="#
|
|
109
|
+
<a href="#M000470">close</a>
|
|
110
110
|
|
|
111
|
-
<a href="#
|
|
111
|
+
<a href="#M000479">error</a>
|
|
112
112
|
|
|
113
|
-
<a href="#
|
|
113
|
+
<a href="#M000478">expandMacro</a>
|
|
114
114
|
|
|
115
|
-
<a href="#
|
|
115
|
+
<a href="#M000473">fileName</a>
|
|
116
116
|
|
|
117
|
-
<a href="#
|
|
117
|
+
<a href="#M000471">include</a>
|
|
118
118
|
|
|
119
|
-
<a href="#
|
|
119
|
+
<a href="#M000477">macroDefined?</a>
|
|
120
120
|
|
|
121
|
-
<a href="#
|
|
121
|
+
<a href="#M000481">message</a>
|
|
122
122
|
|
|
123
|
-
<a href="#
|
|
123
|
+
<a href="#M000468">new</a>
|
|
124
124
|
|
|
125
|
-
<a href="#
|
|
125
|
+
<a href="#M000474">nextToken</a>
|
|
126
126
|
|
|
127
|
-
<a href="#
|
|
127
|
+
<a href="#M000469">open</a>
|
|
128
128
|
|
|
129
|
-
<a href="#
|
|
129
|
+
<a href="#M000475">returnToken</a>
|
|
130
130
|
|
|
131
|
-
<a href="#
|
|
131
|
+
<a href="#M000472">sourceFileInfo</a>
|
|
132
132
|
|
|
133
|
-
<a href="#
|
|
133
|
+
<a href="#M000480">warning</a>
|
|
134
134
|
|
|
135
135
|
</div>
|
|
136
136
|
</div>
|
|
@@ -160,12 +160,12 @@ Class <a href="TextScanner/StreamHandle.html" class="link">TaskJuggler::TextScan
|
|
|
160
160
|
<h3 class="section-bar">Public Class methods</h3>
|
|
161
161
|
|
|
162
162
|
|
|
163
|
-
<div id="method-
|
|
164
|
-
<a name="
|
|
163
|
+
<div id="method-M000468" class="method-detail">
|
|
164
|
+
<a name="M000468"></a>
|
|
165
165
|
|
|
166
166
|
<div class="method-heading">
|
|
167
167
|
|
|
168
|
-
<a href="#
|
|
168
|
+
<a href="#M000468" class="method-signature">
|
|
169
169
|
|
|
170
170
|
<span class="method-name">new</span><span class="method-args">(masterFile, messageHandler)</span>
|
|
171
171
|
|
|
@@ -185,25 +185,26 @@ messages.
|
|
|
185
185
|
</p>
|
|
186
186
|
|
|
187
187
|
<p><a class="source-toggle" href="#"
|
|
188
|
-
onclick="toggleCode('
|
|
189
|
-
<div class="method-source-code" id="
|
|
188
|
+
onclick="toggleCode('M000468-source');return false;">[Source]</a></p>
|
|
189
|
+
<div class="method-source-code" id="M000468-source">
|
|
190
190
|
<pre>
|
|
191
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
191
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 145</span>
|
|
192
|
+
145: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">masterFile</span>, <span class="ruby-identifier">messageHandler</span>)
|
|
193
|
+
146: <span class="ruby-ivar">@masterFile</span> = <span class="ruby-identifier">masterFile</span>
|
|
194
|
+
147: <span class="ruby-ivar">@messageHandler</span> = <span class="ruby-identifier">messageHandler</span>
|
|
195
|
+
148: <span class="ruby-comment cmt"># This table contains all macros that may be expanded when found in the</span>
|
|
196
|
+
149: <span class="ruby-comment cmt"># text.</span>
|
|
197
|
+
150: <span class="ruby-ivar">@macroTable</span> = <span class="ruby-constant">MacroTable</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">messageHandler</span>)
|
|
198
|
+
151: <span class="ruby-comment cmt"># This Array stores the currently processed nested files. It's an Array</span>
|
|
199
|
+
152: <span class="ruby-comment cmt"># of Arrays. The nested Array consists of 3 elements, the @cf,</span>
|
|
200
|
+
153: <span class="ruby-comment cmt"># @tokenBuffer and the @pos of the file.</span>
|
|
201
|
+
154: <span class="ruby-ivar">@fileStack</span> = []
|
|
202
|
+
155: <span class="ruby-comment cmt"># This Array stores the currently processed nested macros.</span>
|
|
203
|
+
156: <span class="ruby-ivar">@macroStack</span> = []
|
|
204
|
+
157: <span class="ruby-comment cmt"># In certain situation we want to ignore Macro replacement and this flag</span>
|
|
205
|
+
158: <span class="ruby-comment cmt"># is set to true.</span>
|
|
206
|
+
159: <span class="ruby-ivar">@ignoreMacros</span> = <span class="ruby-keyword kw">false</span>
|
|
207
|
+
160: <span class="ruby-ivar">@fileNameIsBuffer</span> = <span class="ruby-keyword kw">false</span>
|
|
207
208
|
161: <span class="ruby-keyword kw">end</span>
|
|
208
209
|
</pre>
|
|
209
210
|
</div>
|
|
@@ -215,12 +216,12 @@ messages.
|
|
|
215
216
|
<h3 class="section-bar">Public Instance methods</h3>
|
|
216
217
|
|
|
217
218
|
|
|
218
|
-
<div id="method-
|
|
219
|
-
<a name="
|
|
219
|
+
<div id="method-M000476" class="method-detail">
|
|
220
|
+
<a name="M000476"></a>
|
|
220
221
|
|
|
221
222
|
<div class="method-heading">
|
|
222
223
|
|
|
223
|
-
<a href="#
|
|
224
|
+
<a href="#M000476" class="method-signature">
|
|
224
225
|
|
|
225
226
|
<span class="method-name">addMacro</span><span class="method-args">(macro)</span>
|
|
226
227
|
|
|
@@ -235,13 +236,13 @@ Add a <a href="Macro.html">Macro</a> to the macro translation table.
|
|
|
235
236
|
</p>
|
|
236
237
|
|
|
237
238
|
<p><a class="source-toggle" href="#"
|
|
238
|
-
onclick="toggleCode('
|
|
239
|
-
<div class="method-source-code" id="
|
|
239
|
+
onclick="toggleCode('M000476-source');return false;">[Source]</a></p>
|
|
240
|
+
<div class="method-source-code" id="M000476-source">
|
|
240
241
|
<pre>
|
|
241
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
242
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 334</span>
|
|
243
|
+
334: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">addMacro</span>(<span class="ruby-identifier">macro</span>)
|
|
244
|
+
335: <span class="ruby-ivar">@macroTable</span>.<span class="ruby-identifier">add</span>(<span class="ruby-identifier">macro</span>)
|
|
245
|
+
336: <span class="ruby-keyword kw">end</span>
|
|
245
246
|
</pre>
|
|
246
247
|
</div>
|
|
247
248
|
|
|
@@ -249,12 +250,12 @@ Add a <a href="Macro.html">Macro</a> to the macro translation table.
|
|
|
249
250
|
</div>
|
|
250
251
|
|
|
251
252
|
|
|
252
|
-
<div id="method-
|
|
253
|
-
<a name="
|
|
253
|
+
<div id="method-M000470" class="method-detail">
|
|
254
|
+
<a name="M000470"></a>
|
|
254
255
|
|
|
255
256
|
<div class="method-heading">
|
|
256
257
|
|
|
257
|
-
<a href="#
|
|
258
|
+
<a href="#M000470" class="method-signature">
|
|
258
259
|
|
|
259
260
|
<span class="method-name">close</span><span class="method-args">()</span>
|
|
260
261
|
|
|
@@ -269,16 +270,18 @@ Finish processing and reset all data structures.
|
|
|
269
270
|
</p>
|
|
270
271
|
|
|
271
272
|
<p><a class="source-toggle" href="#"
|
|
272
|
-
onclick="toggleCode('
|
|
273
|
-
<div class="method-source-code" id="
|
|
273
|
+
onclick="toggleCode('M000470-source');return false;">[Source]</a></p>
|
|
274
|
+
<div class="method-source-code" id="M000470-source">
|
|
274
275
|
<pre>
|
|
275
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
276
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 181</span>
|
|
277
|
+
181: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">close</span>
|
|
278
|
+
182: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@fileNameIsBuffer</span>
|
|
279
|
+
183: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">startProgressMeter</span>(<span class="ruby-node">"Reading file #{@masterFile}"</span>)
|
|
280
|
+
184: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">stopProgressMeter</span>
|
|
281
|
+
185: <span class="ruby-keyword kw">end</span>
|
|
282
|
+
186: <span class="ruby-ivar">@fileStack</span> = []
|
|
283
|
+
187: <span class="ruby-ivar">@cf</span> = <span class="ruby-ivar">@tokenBuffer</span> = <span class="ruby-keyword kw">nil</span>
|
|
284
|
+
188: <span class="ruby-keyword kw">end</span>
|
|
282
285
|
</pre>
|
|
283
286
|
</div>
|
|
284
287
|
|
|
@@ -286,12 +289,12 @@ Finish processing and reset all data structures.
|
|
|
286
289
|
</div>
|
|
287
290
|
|
|
288
291
|
|
|
289
|
-
<div id="method-
|
|
290
|
-
<a name="
|
|
292
|
+
<div id="method-M000479" class="method-detail">
|
|
293
|
+
<a name="M000479"></a>
|
|
291
294
|
|
|
292
295
|
<div class="method-heading">
|
|
293
296
|
|
|
294
|
-
<a href="#
|
|
297
|
+
<a href="#M000479" class="method-signature">
|
|
295
298
|
|
|
296
299
|
<span class="method-name">error</span><span class="method-args">(id, text, property = nil)</span>
|
|
297
300
|
|
|
@@ -306,13 +309,13 @@ Call this function to report any errors related to the parsed input.
|
|
|
306
309
|
</p>
|
|
307
310
|
|
|
308
311
|
<p><a class="source-toggle" href="#"
|
|
309
|
-
onclick="toggleCode('
|
|
310
|
-
<div class="method-source-code" id="
|
|
312
|
+
onclick="toggleCode('M000479-source');return false;">[Source]</a></p>
|
|
313
|
+
<div class="method-source-code" id="M000479-source">
|
|
311
314
|
<pre>
|
|
312
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
315
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 360</span>
|
|
316
|
+
360: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">error</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span> = <span class="ruby-keyword kw">nil</span>)
|
|
317
|
+
361: <span class="ruby-identifier">message</span>(<span class="ruby-value str">'error'</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span>)
|
|
318
|
+
362: <span class="ruby-keyword kw">end</span>
|
|
316
319
|
</pre>
|
|
317
320
|
</div>
|
|
318
321
|
|
|
@@ -320,12 +323,12 @@ Call this function to report any errors related to the parsed input.
|
|
|
320
323
|
</div>
|
|
321
324
|
|
|
322
325
|
|
|
323
|
-
<div id="method-
|
|
324
|
-
<a name="
|
|
326
|
+
<div id="method-M000478" class="method-detail">
|
|
327
|
+
<a name="M000478"></a>
|
|
325
328
|
|
|
326
329
|
<div class="method-heading">
|
|
327
330
|
|
|
328
|
-
<a href="#
|
|
331
|
+
<a href="#M000478" class="method-signature">
|
|
329
332
|
|
|
330
333
|
<span class="method-name">expandMacro</span><span class="method-args">(args)</span>
|
|
331
334
|
|
|
@@ -336,22 +339,25 @@ Call this function to report any errors related to the parsed input.
|
|
|
336
339
|
<div class="method-description">
|
|
337
340
|
|
|
338
341
|
<p><a class="source-toggle" href="#"
|
|
339
|
-
onclick="toggleCode('
|
|
340
|
-
<div class="method-source-code" id="
|
|
342
|
+
onclick="toggleCode('M000478-source');return false;">[Source]</a></p>
|
|
343
|
+
<div class="method-source-code" id="M000478-source">
|
|
341
344
|
<pre>
|
|
342
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
345
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 343</span>
|
|
346
|
+
343: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">expandMacro</span>(<span class="ruby-identifier">args</span>)
|
|
347
|
+
344: <span class="ruby-identifier">macro</span>, <span class="ruby-identifier">text</span> = <span class="ruby-ivar">@macroTable</span>.<span class="ruby-identifier">resolve</span>(<span class="ruby-identifier">args</span>, <span class="ruby-identifier">sourceFileInfo</span>)
|
|
348
|
+
345: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">text</span> <span class="ruby-operator">==</span> <span class="ruby-value str">''</span>
|
|
349
|
+
346:
|
|
350
|
+
347: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@macroStack</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">20</span>
|
|
351
|
+
348: <span class="ruby-identifier">error</span>(<span class="ruby-value str">'macro_stack_overflow'</span>, <span class="ruby-value str">"Too many nested macro calls."</span>)
|
|
352
|
+
349: <span class="ruby-keyword kw">end</span>
|
|
353
|
+
350: <span class="ruby-ivar">@macroStack</span> <span class="ruby-operator"><<</span> [ <span class="ruby-identifier">macro</span>, <span class="ruby-identifier">args</span> ]
|
|
354
|
+
351: <span class="ruby-comment cmt"># Mark end of macro with a 0 element</span>
|
|
355
|
+
352: <span class="ruby-ivar">@cf</span>.<span class="ruby-identifier">charBuffer</span> <span class="ruby-operator"><<</span> <span class="ruby-value">0</span>
|
|
356
|
+
353: <span class="ruby-identifier">text</span>.<span class="ruby-identifier">reverse</span>.<span class="ruby-identifier">each_utf8_char</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span>
|
|
357
|
+
354: <span class="ruby-ivar">@cf</span>.<span class="ruby-identifier">charBuffer</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">c</span>
|
|
358
|
+
355: <span class="ruby-keyword kw">end</span>
|
|
359
|
+
356: <span class="ruby-ivar">@cf</span>.<span class="ruby-identifier">line</span> = <span class="ruby-value str">''</span>
|
|
360
|
+
357: <span class="ruby-keyword kw">end</span>
|
|
355
361
|
</pre>
|
|
356
362
|
</div>
|
|
357
363
|
|
|
@@ -359,12 +365,12 @@ Call this function to report any errors related to the parsed input.
|
|
|
359
365
|
</div>
|
|
360
366
|
|
|
361
367
|
|
|
362
|
-
<div id="method-
|
|
363
|
-
<a name="
|
|
368
|
+
<div id="method-M000473" class="method-detail">
|
|
369
|
+
<a name="M000473"></a>
|
|
364
370
|
|
|
365
371
|
<div class="method-heading">
|
|
366
372
|
|
|
367
|
-
<a href="#
|
|
373
|
+
<a href="#M000473" class="method-signature">
|
|
368
374
|
|
|
369
375
|
<span class="method-name">fileName</span><span class="method-args">()</span>
|
|
370
376
|
|
|
@@ -380,13 +386,13 @@ text buffer, the text will be returned.
|
|
|
380
386
|
</p>
|
|
381
387
|
|
|
382
388
|
<p><a class="source-toggle" href="#"
|
|
383
|
-
onclick="toggleCode('
|
|
384
|
-
<div class="method-source-code" id="
|
|
389
|
+
onclick="toggleCode('M000473-source');return false;">[Source]</a></p>
|
|
390
|
+
<div class="method-source-code" id="M000473-source">
|
|
385
391
|
<pre>
|
|
386
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
392
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 234</span>
|
|
393
|
+
234: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">fileName</span>
|
|
394
|
+
235: <span class="ruby-ivar">@cf</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@cf</span>.<span class="ruby-identifier">fileName</span> <span class="ruby-operator">:</span> <span class="ruby-ivar">@masterFile</span>
|
|
395
|
+
236: <span class="ruby-keyword kw">end</span>
|
|
390
396
|
</pre>
|
|
391
397
|
</div>
|
|
392
398
|
|
|
@@ -394,12 +400,12 @@ text buffer, the text will be returned.
|
|
|
394
400
|
</div>
|
|
395
401
|
|
|
396
402
|
|
|
397
|
-
<div id="method-
|
|
398
|
-
<a name="
|
|
403
|
+
<div id="method-M000471" class="method-detail">
|
|
404
|
+
<a name="M000471"></a>
|
|
399
405
|
|
|
400
406
|
<div class="method-heading">
|
|
401
407
|
|
|
402
|
-
<a href="#
|
|
408
|
+
<a href="#M000471" class="method-signature">
|
|
403
409
|
|
|
404
410
|
<span class="method-name">include</span><span class="method-args">(fileName)</span>
|
|
405
411
|
|
|
@@ -416,42 +422,43 @@ where we started with the new file.
|
|
|
416
422
|
</p>
|
|
417
423
|
|
|
418
424
|
<p><a class="source-toggle" href="#"
|
|
419
|
-
onclick="toggleCode('
|
|
420
|
-
<div class="method-source-code" id="
|
|
425
|
+
onclick="toggleCode('M000471-source');return false;">[Source]</a></p>
|
|
426
|
+
<div class="method-source-code" id="M000471-source">
|
|
421
427
|
<pre>
|
|
422
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
428
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 193</span>
|
|
429
|
+
193: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">include</span>(<span class="ruby-identifier">fileName</span>)
|
|
430
|
+
194: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">fileName</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">!=</span> <span class="ruby-value str">'/'</span>
|
|
431
|
+
195: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@fileStack</span>.<span class="ruby-identifier">empty?</span>
|
|
432
|
+
196: <span class="ruby-identifier">path</span> = <span class="ruby-ivar">@masterPath</span>
|
|
433
|
+
197: <span class="ruby-keyword kw">else</span>
|
|
434
|
+
198: <span class="ruby-identifier">pathOfCallingFile</span> = <span class="ruby-ivar">@fileStack</span>.<span class="ruby-identifier">last</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">dirname</span>
|
|
435
|
+
199: <span class="ruby-identifier">path</span> = <span class="ruby-identifier">pathOfCallingFile</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-value">? </span><span class="ruby-value str">''</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">pathOfCallingFile</span> <span class="ruby-operator">+</span> <span class="ruby-value str">'/'</span>
|
|
436
|
+
200: <span class="ruby-ivar">@fileStack</span>.<span class="ruby-identifier">last</span>[<span class="ruby-value">1</span>, <span class="ruby-value">2</span>] = [ <span class="ruby-ivar">@tokenBuffer</span>, <span class="ruby-ivar">@pos</span> ]
|
|
437
|
+
201: <span class="ruby-keyword kw">end</span>
|
|
438
|
+
202: <span class="ruby-comment cmt"># If the included file is not an absolute name, we interpret the file</span>
|
|
439
|
+
203: <span class="ruby-comment cmt"># name relative to the including file.</span>
|
|
440
|
+
204: <span class="ruby-identifier">fileName</span> = <span class="ruby-identifier">path</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">fileName</span>
|
|
441
|
+
205: <span class="ruby-keyword kw">end</span>
|
|
442
|
+
206:
|
|
443
|
+
207: <span class="ruby-ivar">@tokenBuffer</span> = <span class="ruby-keyword kw">nil</span>
|
|
444
|
+
208:
|
|
445
|
+
209: <span class="ruby-comment cmt"># Check the current file stack to find recusions.</span>
|
|
446
|
+
210: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@pos</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">fileName</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@pos</span>.<span class="ruby-identifier">fileName</span>
|
|
447
|
+
211: <span class="ruby-identifier">error</span>(<span class="ruby-value str">'include_recursion'</span>, <span class="ruby-node">"Recursive inclusion of #{fileName} detected"</span>)
|
|
448
|
+
212: <span class="ruby-keyword kw">else</span>
|
|
449
|
+
213: <span class="ruby-ivar">@fileStack</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
|
|
450
|
+
214: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">fileName</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">fileName</span>
|
|
451
|
+
215: <span class="ruby-identifier">error</span>(<span class="ruby-value str">'include_recursion'</span>, <span class="ruby-node">"Recursive inclusion of #{fileName} "</span> <span class="ruby-operator">+</span>
|
|
452
|
+
216: <span class="ruby-value str">"detected"</span>)
|
|
453
|
+
217: <span class="ruby-keyword kw">end</span>
|
|
454
|
+
218: <span class="ruby-keyword kw">end</span>
|
|
455
|
+
219: <span class="ruby-keyword kw">end</span>
|
|
456
|
+
220: <span class="ruby-keyword kw">begin</span>
|
|
457
|
+
221: <span class="ruby-ivar">@fileStack</span> <span class="ruby-operator"><<</span> [ (<span class="ruby-ivar">@cf</span> = <span class="ruby-constant">FileStreamHandle</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">fileName</span>)), <span class="ruby-keyword kw">nil</span>, <span class="ruby-keyword kw">nil</span> ]
|
|
458
|
+
222: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">StandardError</span>
|
|
459
|
+
223: <span class="ruby-identifier">error</span>(<span class="ruby-value str">'bad_include'</span>, <span class="ruby-node">"Cannot open include file #{fileName}"</span>)
|
|
460
|
+
224: <span class="ruby-keyword kw">end</span>
|
|
461
|
+
225: <span class="ruby-keyword kw">end</span>
|
|
455
462
|
</pre>
|
|
456
463
|
</div>
|
|
457
464
|
|
|
@@ -459,12 +466,12 @@ where we started with the new file.
|
|
|
459
466
|
</div>
|
|
460
467
|
|
|
461
468
|
|
|
462
|
-
<div id="method-
|
|
463
|
-
<a name="
|
|
469
|
+
<div id="method-M000477" class="method-detail">
|
|
470
|
+
<a name="M000477"></a>
|
|
464
471
|
|
|
465
472
|
<div class="method-heading">
|
|
466
473
|
|
|
467
|
-
<a href="#
|
|
474
|
+
<a href="#M000477" class="method-signature">
|
|
468
475
|
|
|
469
476
|
<span class="method-name">macroDefined?</span><span class="method-args">(name)</span>
|
|
470
477
|
|
|
@@ -480,13 +487,13 @@ added already.
|
|
|
480
487
|
</p>
|
|
481
488
|
|
|
482
489
|
<p><a class="source-toggle" href="#"
|
|
483
|
-
onclick="toggleCode('
|
|
484
|
-
<div class="method-source-code" id="
|
|
490
|
+
onclick="toggleCode('M000477-source');return false;">[Source]</a></p>
|
|
491
|
+
<div class="method-source-code" id="M000477-source">
|
|
485
492
|
<pre>
|
|
486
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
493
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 339</span>
|
|
494
|
+
339: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">macroDefined?</span>(<span class="ruby-identifier">name</span>)
|
|
495
|
+
340: <span class="ruby-ivar">@macroTable</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">name</span>)
|
|
496
|
+
341: <span class="ruby-keyword kw">end</span>
|
|
490
497
|
</pre>
|
|
491
498
|
</div>
|
|
492
499
|
|
|
@@ -494,12 +501,12 @@ added already.
|
|
|
494
501
|
</div>
|
|
495
502
|
|
|
496
503
|
|
|
497
|
-
<div id="method-
|
|
498
|
-
<a name="
|
|
504
|
+
<div id="method-M000481" class="method-detail">
|
|
505
|
+
<a name="M000481"></a>
|
|
499
506
|
|
|
500
507
|
<div class="method-heading">
|
|
501
508
|
|
|
502
|
-
<a href="#
|
|
509
|
+
<a href="#M000481" class="method-signature">
|
|
503
510
|
|
|
504
511
|
<span class="method-name">message</span><span class="method-args">(type, id, text, property)</span>
|
|
505
512
|
|
|
@@ -510,29 +517,29 @@ added already.
|
|
|
510
517
|
<div class="method-description">
|
|
511
518
|
|
|
512
519
|
<p><a class="source-toggle" href="#"
|
|
513
|
-
onclick="toggleCode('
|
|
514
|
-
<div class="method-source-code" id="
|
|
520
|
+
onclick="toggleCode('M000481-source');return false;">[Source]</a></p>
|
|
521
|
+
<div class="method-source-code" id="M000481-source">
|
|
515
522
|
<pre>
|
|
516
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
523
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 368</span>
|
|
524
|
+
368: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">message</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span>)
|
|
525
|
+
369: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">empty?</span>
|
|
526
|
+
370: <span class="ruby-identifier">message</span> = <span class="ruby-constant">Message</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">text</span> <span class="ruby-operator">+</span> <span class="ruby-value str">"\n"</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">line</span>.<span class="ruby-identifier">to_s</span>,
|
|
527
|
+
371: <span class="ruby-identifier">property</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">sourceFileInfo</span>)
|
|
528
|
+
372: <span class="ruby-ivar">@messageHandler</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">message</span>)
|
|
529
|
+
373:
|
|
530
|
+
374: <span class="ruby-keyword kw">until</span> <span class="ruby-ivar">@macroStack</span>.<span class="ruby-identifier">empty?</span>
|
|
531
|
+
375: <span class="ruby-identifier">macro</span>, <span class="ruby-identifier">args</span> = <span class="ruby-ivar">@macroStack</span>.<span class="ruby-identifier">pop</span>
|
|
532
|
+
376: <span class="ruby-identifier">args</span>.<span class="ruby-identifier">collect!</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span> <span class="ruby-value str">'"'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">a</span> <span class="ruby-operator">+</span> <span class="ruby-value str">'"'</span> }
|
|
533
|
+
377: <span class="ruby-identifier">message</span> = <span class="ruby-constant">Message</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'macro_stack'</span>, <span class="ruby-value str">'info'</span>,
|
|
534
|
+
378: <span class="ruby-node">" #{macro.name} #{args.join(' ')}"</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-keyword kw">nil</span>,
|
|
535
|
+
379: <span class="ruby-identifier">macro</span>.<span class="ruby-identifier">sourceFileInfo</span>)
|
|
536
|
+
380: <span class="ruby-ivar">@messageHandler</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">message</span>)
|
|
537
|
+
381: <span class="ruby-keyword kw">end</span>
|
|
538
|
+
382: <span class="ruby-keyword kw">end</span>
|
|
539
|
+
383:
|
|
540
|
+
384: <span class="ruby-comment cmt"># An empty strings signals an already reported error</span>
|
|
541
|
+
385: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">''</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'error'</span>
|
|
542
|
+
386: <span class="ruby-keyword kw">end</span>
|
|
536
543
|
</pre>
|
|
537
544
|
</div>
|
|
538
545
|
|
|
@@ -540,12 +547,12 @@ added already.
|
|
|
540
547
|
</div>
|
|
541
548
|
|
|
542
549
|
|
|
543
|
-
<div id="method-
|
|
544
|
-
<a name="
|
|
550
|
+
<div id="method-M000474" class="method-detail">
|
|
551
|
+
<a name="M000474"></a>
|
|
545
552
|
|
|
546
553
|
<div class="method-heading">
|
|
547
554
|
|
|
548
|
-
<a href="#
|
|
555
|
+
<a href="#M000474" class="method-signature">
|
|
549
556
|
|
|
550
557
|
<span class="method-name">nextToken</span><span class="method-args">()</span>
|
|
551
558
|
|
|
@@ -561,73 +568,78 @@ be an Array of the form [ TokenType, TokenValue ].
|
|
|
561
568
|
</p>
|
|
562
569
|
|
|
563
570
|
<p><a class="source-toggle" href="#"
|
|
564
|
-
onclick="toggleCode('
|
|
565
|
-
<div class="method-source-code" id="
|
|
571
|
+
onclick="toggleCode('M000474-source');return false;">[Source]</a></p>
|
|
572
|
+
<div class="method-source-code" id="M000474-source">
|
|
566
573
|
<pre>
|
|
567
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
293: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">readOperator</span>(<span class="ruby-identifier">c</span>)
|
|
614
|
-
294: <span class="ruby-keyword kw">break</span>
|
|
615
|
-
295: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'['</span>
|
|
616
|
-
296: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">readMacro</span>
|
|
574
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 252</span>
|
|
575
|
+
252: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">nextToken</span>
|
|
576
|
+
253: <span class="ruby-comment cmt"># If we have a pushed-back token, return that first.</span>
|
|
577
|
+
254: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@tokenBuffer</span>.<span class="ruby-identifier">nil?</span>
|
|
578
|
+
255: <span class="ruby-identifier">res</span> = <span class="ruby-ivar">@tokenBuffer</span>
|
|
579
|
+
256: <span class="ruby-ivar">@tokenBuffer</span> = <span class="ruby-keyword kw">nil</span>
|
|
580
|
+
257: <span class="ruby-ivar">@pos</span> = <span class="ruby-ivar">@tokenBufferPos</span>
|
|
581
|
+
258: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">res</span>
|
|
582
|
+
259: <span class="ruby-keyword kw">end</span>
|
|
583
|
+
260:
|
|
584
|
+
261: <span class="ruby-comment cmt"># Start processing characters from the input.</span>
|
|
585
|
+
262: <span class="ruby-ivar">@startOfToken</span> = <span class="ruby-constant">SourceFileInfo</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">fileName</span>, <span class="ruby-identifier">lineNo</span>, <span class="ruby-identifier">columnNo</span>)
|
|
586
|
+
263: <span class="ruby-identifier">token</span> = [ <span class="ruby-value str">'.'</span>, <span class="ruby-value str">'<END>'</span> ]
|
|
587
|
+
264: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">c</span> = <span class="ruby-identifier">nextChar</span>
|
|
588
|
+
265: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">c</span>
|
|
589
|
+
266: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">' '</span>, <span class="ruby-value str">"\n"</span>, <span class="ruby-value str">"\t"</span>
|
|
590
|
+
267: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">tok</span> = <span class="ruby-identifier">readBlanks</span>(<span class="ruby-identifier">c</span>))
|
|
591
|
+
268: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">tok</span>
|
|
592
|
+
269: <span class="ruby-keyword kw">break</span>
|
|
593
|
+
270: <span class="ruby-keyword kw">end</span>
|
|
594
|
+
271: <span class="ruby-ivar">@startOfToken</span> = <span class="ruby-constant">SourceFileInfo</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">fileName</span>, <span class="ruby-identifier">lineNo</span>, <span class="ruby-identifier">columnNo</span>)
|
|
595
|
+
272: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'#'</span>
|
|
596
|
+
273: <span class="ruby-identifier">skipComment</span>
|
|
597
|
+
274: <span class="ruby-ivar">@startOfToken</span> = <span class="ruby-constant">SourceFileInfo</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">fileName</span>, <span class="ruby-identifier">lineNo</span>, <span class="ruby-identifier">columnNo</span>)
|
|
598
|
+
275: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'/'</span>
|
|
599
|
+
276: <span class="ruby-identifier">skipCPlusPlusComments</span>
|
|
600
|
+
277: <span class="ruby-ivar">@startOfToken</span> = <span class="ruby-constant">SourceFileInfo</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">fileName</span>, <span class="ruby-identifier">lineNo</span>, <span class="ruby-identifier">columnNo</span>)
|
|
601
|
+
278: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'0'</span><span class="ruby-operator">..</span><span class="ruby-value str">'9'</span>
|
|
602
|
+
279: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">readNumber</span>(<span class="ruby-identifier">c</span>)
|
|
603
|
+
280: <span class="ruby-keyword kw">break</span>
|
|
604
|
+
281: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">"'"</span>
|
|
605
|
+
282: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">readString</span>(<span class="ruby-identifier">c</span>)
|
|
606
|
+
283: <span class="ruby-keyword kw">break</span>
|
|
607
|
+
284: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'"'</span>
|
|
608
|
+
285: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">readString</span>(<span class="ruby-identifier">c</span>)
|
|
609
|
+
286: <span class="ruby-keyword kw">break</span>
|
|
610
|
+
287: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'-'</span>
|
|
611
|
+
288: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">handleDash</span>
|
|
612
|
+
289: <span class="ruby-keyword kw">break</span>
|
|
613
|
+
290: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'!'</span>
|
|
614
|
+
291: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">c</span> = <span class="ruby-identifier">nextChar</span>) <span class="ruby-operator">==</span> <span class="ruby-value str">'='</span>
|
|
615
|
+
292: <span class="ruby-identifier">token</span> = [ <span class="ruby-value str">'LITERAL'</span>, <span class="ruby-value str">'!='</span> ]
|
|
616
|
+
293: <span class="ruby-keyword kw">else</span>
|
|
617
|
+
294: <span class="ruby-identifier">returnChar</span>(<span class="ruby-identifier">c</span>)
|
|
618
|
+
295: <span class="ruby-identifier">token</span> = [ <span class="ruby-value str">'LITERAL'</span>, <span class="ruby-value str">'!'</span> ]
|
|
619
|
+
296: <span class="ruby-keyword kw">end</span>
|
|
617
620
|
297: <span class="ruby-keyword kw">break</span>
|
|
618
|
-
298: <span class="ruby-keyword kw">when</span> <span class="ruby-
|
|
619
|
-
299: <span class="ruby-
|
|
621
|
+
298: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'a'</span><span class="ruby-operator">..</span><span class="ruby-value str">'z'</span>, <span class="ruby-value str">'A'</span><span class="ruby-operator">..</span><span class="ruby-value str">'Z'</span>, <span class="ruby-value str">'_'</span>
|
|
622
|
+
299: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">readId</span>(<span class="ruby-identifier">c</span>)
|
|
620
623
|
300: <span class="ruby-keyword kw">break</span>
|
|
621
|
-
301: <span class="ruby-keyword kw">
|
|
622
|
-
302: <span class="ruby-identifier">
|
|
623
|
-
303: <span class="ruby-
|
|
624
|
-
304:
|
|
625
|
-
305: <span class="ruby-
|
|
626
|
-
306:
|
|
627
|
-
307:
|
|
628
|
-
308:
|
|
629
|
-
309:
|
|
630
|
-
310:
|
|
624
|
+
301: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'<'</span>, <span class="ruby-value str">'>'</span>, <span class="ruby-value str">'='</span>
|
|
625
|
+
302: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">readOperator</span>(<span class="ruby-identifier">c</span>)
|
|
626
|
+
303: <span class="ruby-keyword kw">break</span>
|
|
627
|
+
304: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'['</span>
|
|
628
|
+
305: <span class="ruby-identifier">token</span> = <span class="ruby-identifier">readMacro</span>
|
|
629
|
+
306: <span class="ruby-keyword kw">break</span>
|
|
630
|
+
307: <span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>
|
|
631
|
+
308: <span class="ruby-comment cmt"># We've reached an end of file or buffer</span>
|
|
632
|
+
309: <span class="ruby-keyword kw">break</span>
|
|
633
|
+
310: <span class="ruby-keyword kw">else</span>
|
|
634
|
+
311: <span class="ruby-identifier">str</span> = <span class="ruby-value str">""</span>
|
|
635
|
+
312: <span class="ruby-identifier">str</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">c</span>
|
|
636
|
+
313: <span class="ruby-identifier">token</span> = [ <span class="ruby-value str">'LITERAL'</span>, <span class="ruby-identifier">str</span> ]
|
|
637
|
+
314: <span class="ruby-keyword kw">break</span>
|
|
638
|
+
315: <span class="ruby-keyword kw">end</span>
|
|
639
|
+
316: <span class="ruby-keyword kw">end</span>
|
|
640
|
+
317: <span class="ruby-ivar">@pos</span> = <span class="ruby-ivar">@startOfToken</span>
|
|
641
|
+
318: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">token</span>
|
|
642
|
+
319: <span class="ruby-keyword kw">end</span>
|
|
631
643
|
</pre>
|
|
632
644
|
</div>
|
|
633
645
|
|
|
@@ -635,12 +647,12 @@ be an Array of the form [ TokenType, TokenValue ].
|
|
|
635
647
|
</div>
|
|
636
648
|
|
|
637
649
|
|
|
638
|
-
<div id="method-
|
|
639
|
-
<a name="
|
|
650
|
+
<div id="method-M000469" class="method-detail">
|
|
651
|
+
<a name="M000469"></a>
|
|
640
652
|
|
|
641
653
|
<div class="method-heading">
|
|
642
654
|
|
|
643
|
-
<a href="#
|
|
655
|
+
<a href="#M000469" class="method-signature">
|
|
644
656
|
|
|
645
657
|
<span class="method-name">open</span><span class="method-args">(fileNameIsBuffer = false)</span>
|
|
646
658
|
|
|
@@ -656,23 +668,24 @@ Start the processing. if <em>fileNameIsBuffer</em> is true, we operate on a
|
|
|
656
668
|
</p>
|
|
657
669
|
|
|
658
670
|
<p><a class="source-toggle" href="#"
|
|
659
|
-
onclick="toggleCode('
|
|
660
|
-
<div class="method-source-code" id="
|
|
671
|
+
onclick="toggleCode('M000469-source');return false;">[Source]</a></p>
|
|
672
|
+
<div class="method-source-code" id="M000469-source">
|
|
661
673
|
<pre>
|
|
662
674
|
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 165</span>
|
|
663
675
|
165: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">open</span>(<span class="ruby-identifier">fileNameIsBuffer</span> = <span class="ruby-keyword kw">false</span>)
|
|
664
|
-
166: <span class="ruby-
|
|
665
|
-
167:
|
|
666
|
-
168:
|
|
667
|
-
169:
|
|
668
|
-
170:
|
|
669
|
-
171:
|
|
670
|
-
172:
|
|
671
|
-
173:
|
|
672
|
-
174:
|
|
673
|
-
175: <span class="ruby-
|
|
674
|
-
176: <span class="ruby-ivar">@
|
|
675
|
-
177:
|
|
676
|
+
166: <span class="ruby-ivar">@fileNameIsBuffer</span> = <span class="ruby-identifier">fileNameIsBuffer</span>
|
|
677
|
+
167: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">fileNameIsBuffer</span>
|
|
678
|
+
168: <span class="ruby-ivar">@fileStack</span> = [ [ <span class="ruby-ivar">@cf</span> = <span class="ruby-constant">BufferStreamHandle</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@masterFile</span>), <span class="ruby-keyword kw">nil</span>, <span class="ruby-keyword kw">nil</span> ] ]
|
|
679
|
+
169: <span class="ruby-keyword kw">else</span>
|
|
680
|
+
170: <span class="ruby-keyword kw">begin</span>
|
|
681
|
+
171: <span class="ruby-ivar">@fileStack</span> = [ [ <span class="ruby-ivar">@cf</span> = <span class="ruby-constant">FileStreamHandle</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@masterFile</span>), <span class="ruby-keyword kw">nil</span>, <span class="ruby-keyword kw">nil</span> ] ]
|
|
682
|
+
172: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">StandardError</span>
|
|
683
|
+
173: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">"Cannot open file #{@masterFile}"</span>
|
|
684
|
+
174: <span class="ruby-keyword kw">end</span>
|
|
685
|
+
175: <span class="ruby-keyword kw">end</span>
|
|
686
|
+
176: <span class="ruby-ivar">@masterPath</span> = <span class="ruby-ivar">@cf</span>.<span class="ruby-identifier">dirname</span> <span class="ruby-operator">+</span> <span class="ruby-value str">'/'</span>
|
|
687
|
+
177: <span class="ruby-ivar">@tokenBuffer</span> = <span class="ruby-ivar">@pos</span> = <span class="ruby-ivar">@lastPos</span> = <span class="ruby-keyword kw">nil</span>
|
|
688
|
+
178: <span class="ruby-keyword kw">end</span>
|
|
676
689
|
</pre>
|
|
677
690
|
</div>
|
|
678
691
|
|
|
@@ -680,12 +693,12 @@ Start the processing. if <em>fileNameIsBuffer</em> is true, we operate on a
|
|
|
680
693
|
</div>
|
|
681
694
|
|
|
682
695
|
|
|
683
|
-
<div id="method-
|
|
684
|
-
<a name="
|
|
696
|
+
<div id="method-M000475" class="method-detail">
|
|
697
|
+
<a name="M000475"></a>
|
|
685
698
|
|
|
686
699
|
<div class="method-heading">
|
|
687
700
|
|
|
688
|
-
<a href="#
|
|
701
|
+
<a href="#M000475" class="method-signature">
|
|
689
702
|
|
|
690
703
|
<span class="method-name">returnToken</span><span class="method-args">(token)</span>
|
|
691
704
|
|
|
@@ -701,19 +714,19 @@ token can be returned before the next nextToken() call.
|
|
|
701
714
|
</p>
|
|
702
715
|
|
|
703
716
|
<p><a class="source-toggle" href="#"
|
|
704
|
-
onclick="toggleCode('
|
|
705
|
-
<div class="method-source-code" id="
|
|
717
|
+
onclick="toggleCode('M000475-source');return false;">[Source]</a></p>
|
|
718
|
+
<div class="method-source-code" id="M000475-source">
|
|
706
719
|
<pre>
|
|
707
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
720
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 323</span>
|
|
721
|
+
323: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">returnToken</span>(<span class="ruby-identifier">token</span>)
|
|
722
|
+
324: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@tokenBuffer</span>.<span class="ruby-identifier">nil?</span>
|
|
723
|
+
325: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-ivar">@tokenBuffer</span>
|
|
724
|
+
326: <span class="ruby-identifier">raise</span> <span class="ruby-value str">"Fatal Error: Cannot return more than 1 token in a row"</span>
|
|
725
|
+
327: <span class="ruby-keyword kw">end</span>
|
|
726
|
+
328: <span class="ruby-ivar">@tokenBuffer</span> = <span class="ruby-identifier">token</span>
|
|
727
|
+
329: <span class="ruby-ivar">@tokenBufferPos</span> = <span class="ruby-ivar">@pos</span>
|
|
728
|
+
330: <span class="ruby-ivar">@pos</span> = <span class="ruby-ivar">@lastPos</span>
|
|
729
|
+
331: <span class="ruby-keyword kw">end</span>
|
|
717
730
|
</pre>
|
|
718
731
|
</div>
|
|
719
732
|
|
|
@@ -721,12 +734,12 @@ token can be returned before the next nextToken() call.
|
|
|
721
734
|
</div>
|
|
722
735
|
|
|
723
736
|
|
|
724
|
-
<div id="method-
|
|
725
|
-
<a name="
|
|
737
|
+
<div id="method-M000472" class="method-detail">
|
|
738
|
+
<a name="M000472"></a>
|
|
726
739
|
|
|
727
740
|
<div class="method-heading">
|
|
728
741
|
|
|
729
|
-
<a href="#
|
|
742
|
+
<a href="#M000472" class="method-signature">
|
|
730
743
|
|
|
731
744
|
<span class="method-name">sourceFileInfo</span><span class="method-args">()</span>
|
|
732
745
|
|
|
@@ -742,13 +755,13 @@ processing prosition.
|
|
|
742
755
|
</p>
|
|
743
756
|
|
|
744
757
|
<p><a class="source-toggle" href="#"
|
|
745
|
-
onclick="toggleCode('
|
|
746
|
-
<div class="method-source-code" id="
|
|
758
|
+
onclick="toggleCode('M000472-source');return false;">[Source]</a></p>
|
|
759
|
+
<div class="method-source-code" id="M000472-source">
|
|
747
760
|
<pre>
|
|
748
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
761
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 228</span>
|
|
762
|
+
228: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sourceFileInfo</span>
|
|
763
|
+
229: <span class="ruby-ivar">@pos</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@pos</span>.<span class="ruby-identifier">dup</span> <span class="ruby-operator">:</span> <span class="ruby-constant">SourceFileInfo</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">fileName</span>, <span class="ruby-identifier">lineNo</span>, <span class="ruby-identifier">columnNo</span>)
|
|
764
|
+
230: <span class="ruby-keyword kw">end</span>
|
|
752
765
|
</pre>
|
|
753
766
|
</div>
|
|
754
767
|
|
|
@@ -756,12 +769,12 @@ processing prosition.
|
|
|
756
769
|
</div>
|
|
757
770
|
|
|
758
771
|
|
|
759
|
-
<div id="method-
|
|
760
|
-
<a name="
|
|
772
|
+
<div id="method-M000480" class="method-detail">
|
|
773
|
+
<a name="M000480"></a>
|
|
761
774
|
|
|
762
775
|
<div class="method-heading">
|
|
763
776
|
|
|
764
|
-
<a href="#
|
|
777
|
+
<a href="#M000480" class="method-signature">
|
|
765
778
|
|
|
766
779
|
<span class="method-name">warning</span><span class="method-args">(id, text, property = nil)</span>
|
|
767
780
|
|
|
@@ -772,13 +785,13 @@ processing prosition.
|
|
|
772
785
|
<div class="method-description">
|
|
773
786
|
|
|
774
787
|
<p><a class="source-toggle" href="#"
|
|
775
|
-
onclick="toggleCode('
|
|
776
|
-
<div class="method-source-code" id="
|
|
788
|
+
onclick="toggleCode('M000480-source');return false;">[Source]</a></p>
|
|
789
|
+
<div class="method-source-code" id="M000480-source">
|
|
777
790
|
<pre>
|
|
778
|
-
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
791
|
+
<span class="ruby-comment cmt"># File lib/TextScanner.rb, line 364</span>
|
|
792
|
+
364: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">warning</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span> = <span class="ruby-keyword kw">nil</span>)
|
|
793
|
+
365: <span class="ruby-identifier">message</span>(<span class="ruby-value str">'warning'</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">property</span>)
|
|
794
|
+
366: <span class="ruby-keyword kw">end</span>
|
|
782
795
|
</pre>
|
|
783
796
|
</div>
|
|
784
797
|
|