|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T V
Length: 10055 (0x2747)
Types: TextFile
Names: »V«
└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
└─⟦5cb1d1d7f⟧ »DATA«
└─⟦3b1ee7bd8⟧
└─⟦this⟧
with Parsetables;
with Simple_Paginated_Output;
with Lists;
with String_Pkg;
package Source_Instrumenter_Declarations is
--| Declarations for Source Instrumenter tool
--| Overview
--| This package contains declarations for the Source Instrumenter.
--| Notes
--| Abbreviations Used:
--|
--| RH: Right Hand
----------------------------------------------------------------
-- File Declarations
----------------------------------------------------------------
Instrumented_File : Simple_Paginated_Output.Paginated_File_Handle;
--| File handle to pass to Paginated Output routines for
--| Instrumented source
Listing_File : Simple_Paginated_Output.Paginated_File_Handle;
--| File handle for listing file
----------------------------------------------------------------
-- Declarations to parameterize Printing
----------------------------------------------------------------
type Delimiter_Name is (Basic, --| %, :, !
Extended); --| ", #, |
Delimiters : Delimiter_Name := Extended;
--| Determines whether to use the Basic or Extended character set for
--| output.
Max_Columns : constant := 133;
subtype Column_Range is Positive range Positive'First .. Max_Columns;
Page_Width : Column_Range := 74;
--| Width of output page
Rh_Margin : Column_Range := 60;
--| The column beyond which no indenting is performed.
subtype Indentation_Range is Natural range 0 .. Rh_Margin;
Indentation_Level : Indentation_Range := 2;
--| Indentation Level for all constructs
Prefix : constant String := "tbx7_";
package String_Lists is new Lists (String_Pkg.String_Type);
subtype String_List is String_Lists.List;
type Spacing is (After, Before, Around, None);
Spacing_Table : array (1 .. Parsetables.Comment_Tokenvalue) of Spacing :=
(
-- unfortunately, type of ParseTables.xxxTokenValue has non-static bound,
-- so positional rather than named associations must be used to initialize
-- Spacing_Table.
-- The spacing table determines, in general, how to space each token.
-- However, the spacing of some tokens is context dependent, and so
-- some of the spacing is dynamically handled in other places.
-- Spaced_Token refers to Pretty_Printer_Utilities.Spaced_Token.
-- The special cases are described below.
-- ParseTables.Empty_TokenValue =>
None,
-- ParseTables.AbortTokenValue =>
After,
-- ParseTables.AbsTokenValue => -- Spaced_Token inserts space after
None, -- unless followed by '('
-- ParseTables.AcceptTokenValue =>
After,
-- ParseTables.AccessTokenValue =>
After,
-- ParseTables.AllTokenValue =>
None,
-- ParseTables.AndTokenValue =>
Around,
-- ParseTables.ArrayTokenValue =>
None,
-- ParseTables.AtTokenValue =>
Around,
-- ParseTables.BeginTokenValue =>
None,
-- ParseTables.BodyTokenValue =>
After,
-- ParseTables.CaseTokenValue => -- Spaced_Token inserts space after if
None, -- not followed by ';'
-- ParseTables.ConstantTokenValue => -- Spaced_Token inserts space before
After, -- if not following ':='
-- ParseTables.DeclareTokenValue =>
None,
-- ParseTables.DelayTokenValue =>
After,
-- ParseTables.DeltaTokenValue => -- Spaced_Token inserts space before if
None, -- not following ''' or 'IS', after if
-- not followed by ';'
-- ParseTables.DigitsTokenValue => -- Spaced_Token inserts space before if
None, -- not following ''', or 'IS' after if
-- not followed by ';'
-- ParseTables.DoTokenValue =>
Before,
-- ParseTables.ElseTokenValue =>
After,
-- ParseTables.ElsifTokenValue =>
After,
-- ParseTables.EndTokenValue => -- Spaced_Token inserts space after if
None, -- not followed by ';'
-- ParseTables.EntryTokenValue =>
After,
-- ParseTables.ExceptionTokenValue =>
None,
-- ParseTables.ExitTokenValue => -- Spaced_Token inserts space after if
None, -- not followed by ';'
-- ParseTables.ForTokenValue =>
After,
-- ParseTables.FunctionTokenValue =>
After,
-- ParseTables.GenericTokenValue =>
None,
-- ParseTables.GotoTokenValue =>
After,
-- ParseTables.IfTokenValue => -- Spaced_Token inserts space after if
None, -- not followed by ';'
-- ParseTables.InTokenValue => -- Spaced_Token inserts space before if
After, -- not following ':'
-- ParseTables.IsTokenValue =>
Around,
-- ParseTables.LimitedTokenValue =>
After,
-- ParseTables.LoopTokenValue => -- Spaced_Token inserts space after if
None, -- not followed by ';' and space before
-- if not following ':'
-- ParseTables.ModTokenValue => -- Spaced_Token inserts space before if
After, -- not following 'AT'
-- ParseTables.NewTokenValue =>
After,
-- ParseTables.NotTokenValue =>
After,
-- ParseTables.NullTokenValue =>
None,
-- ParseTables.OfTokenValue =>
Around,
-- ParseTables.OrTokenValue =>
Around,
-- ParseTables.OthersTokenValue =>
None,
-- ParseTables.OutTokenValue =>
After,
-- ParseTables.PackageTokenValue =>
After,
-- ParseTables.PragmaTokenValue =>
After,
-- ParseTables.PrivateTokenValue =>
None,
-- ParseTables.ProcedureTokenValue =>
After,
-- ParseTables.RaiseTokenValue => -- Spaced_Token inserts space after if
None, -- not followed by ';'
-- ParseTables.RangeTokenValue => -- Spaced_Token inserts space before if
None, -- not following ''' or 'IS', after if
-- not followed by ';'
-- ParseTables.RecordTokenValue => -- Spaced_Token inserts space after if
None, -- not followed by ';'
-- ParseTables.RemTokenValue =>
Around,
-- ParseTables.RenamesTokenValue =>
Around,
-- ParseTables.ReturnTokenValue => -- Spaced_Token inserts space after if
Before, -- not followed by ';'
-- ParseTables.ReverseTokenValue =>
After,
-- ParseTables.SelectTokenValue => -- Spaced_Token inserts space after if
None, -- not followed by ';'
-- ParseTables.SeparateTokenValue =>
None,
-- ParseTables.SubtypeTokenValue =>
After,
-- ParseTables.TaskTokenValue =>
After,
-- ParseTables.TerminateTokenValue =>
None,
-- ParseTables.ThenTokenValue => -- Spaced_Token inserts space before if
After, -- not preceded by "and"
-- ParseTables.TypeTokenValue =>
After,
-- ParseTables.UseTokenValue => -- Spaced_Token inserts space before if
After, -- not preceded by ';'
-- ParseTables.WhenTokenValue =>
After,
-- ParseTables.WhileTokenValue =>
After,
-- ParseTables.WithTokenValue =>
After,
-- ParseTables.XorTokenValue =>
Around,
-- ParseTables.IdentifierTokenValue =>
None,
-- ParseTables.NumericTokenValue =>
None,
-- ParseTables.StringTokenValue =>
None,
-- ParseTables.CharacterTokenValue =>
None,
-- ParseTables.Ampersand_TokenValue =>
Around,
-- ParseTables.Apostrophe_TokenValue =>
None,
-- ParseTables.LeftParen_TokenValue =>
None,
-- ParseTables.RightParen_TokenValue =>
None,
-- ParseTables.Star_TokenValue =>
None,
-- ParseTables.Plus_TokenValue => -- Parser.Apply_Actions inserts space
None, -- after if it is a binary operator,
-- before if not following '('
-- ParseTables.Comma_TokenValue =>
After,
-- ParseTables.Minus_TokenValue => -- Parser.Apply_Actions inserts space
None, -- after if it is a binary operator,
-- before if not following '('
-- ParseTables.Dot_TokenValue =>
None,
-- ParseTables.Slash_TokenValue =>
None,
-- ParseTables.Colon_TokenValue =>
Around,
-- ParseTables.SemiColon_TokenValue =>
After,
-- ParseTables.LT_TokenValue =>
Around,
-- ParseTables.EQ_TokenValue =>
Around,
-- ParseTables.GT_TokenValue =>
Around,
-- ParseTables.Bar_TokenValue =>
Around,
-- ParseTables.EQGT_TokenValue =>
Around,
-- ParseTables.DotDot_TokenValue =>
Around,
-- ParseTables.StarStar_TokenValue =>
None,
-- ParseTables.ColonEQ_TokenValue =>
After,
-- ParseTables.SlashEQ_TokenValue =>
Around,
-- ParseTables.GTEQ_TokenValue =>
Around,
-- ParseTables.LTEQ_TokenValue =>
Around,
-- ParseTables.LTLT_TokenValue =>
None,
-- ParseTables.GTGT_TokenValue =>
After,
-- ParseTables.LTGT_TokenValue =>
None,
-- ParseTables.Comment_TokenValue =>
None);
end Source_Instrumenter_Declarations;