|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 6144 (0x1800)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, generic, package Structured_Text_Generic, seg_004677
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦5a81ac88f⟧ »Space Info Vol 1«
└─⟦this⟧
--| @SUMMARY This package provides the ability to annotate text in much
--| the same way that the Rational Design Facility provides the ability
--| to annotation Ada.
--|
--| @DESCRIPTION Annotations come in two basic flavors, "Simple" and "Valued".
--|
--| Simple annotations have the syntax:
--|
--| Annotation_Indicator Simple_Keyword
--|
--| Valued annotations have the syntax:
--|
--| Annotation_Indicator Valued_Keyword Argument_Delimiter <argument>
--|
--| For instance, assuming the annotation indicator is '@' and argument
--| indicator is '=', this would be a simple annotation: @A_SIMPLE_KEYWORD
--|
--| and this would be a valued annotation: @A_VALUED_KEYWORD=AN_ARGUMENT
--|
--| Annotations may start in any column, but they must be the first thing
--| on the line.
--|
--| In simple annotations, the image of the keyword must match the image
--| of one of the keywords in "Simple_Keywords" (the comparison is not
--| case-sensitive). No spaces are permitted anywhere in the annotation
--| (although leading and trailing spaces are allowed).
--|
--| In valued annotations, the image of the keyword must match the image
--| of one of the keywords in "Valued_Keywords" (the comparison is not
--| case-sensitive). The argument to a valued annotation may be of any
--| form, but no spaces are permitted in the annotation until after the
--| argument indicator. Leading and trailing spaces are ignored, and
--| comparision of arguments is not case-sensitive.
--|
--| Arguments cannot span multiple lines. However, it is easy to allow
--| continuation of arguments by creating an "@CONT=" annotation.
--|
--| Any line that cannot be resolved into an annotation is treated
--| as an ordinary line.
--|
--| @INDICES (Text_Processing, Utility)
--|
--| @RAISES All operations raise "Not_Initialized" if passed an uninitialized
--| object.
--|
with Lines;
generic
Annotation_Indicator : in Character;
Argument_Delimiter : in Character;
type Simple_Keywords is (<>);
type Valued_Keywords is (<>);
package Structured_Text_Generic is
subtype Line is Lines.Line;
subtype Simple_Annotation is Line;
subtype Valued_Annotation is Line;
--| @SUMMARY Returns True iff the specified line is a simple annotation or
--| valued annotation.
--|
function Is_Annotation (This_Line : in Line) return Boolean;
--| @SUMMARY Returns True iff the specified line is a simple annotation
--| corresponding to one of the simple keywords.
--|
function Is_Simple_Annotation (This_Line : in Line) return Boolean;
--| @SUMMARY Returns True iff the specified line is a valued annotation
--| corresponding to one of the valued keywords.
--|
function Is_Valued_Annotation (This_Line : in Line) return Boolean;
--| @SUMMARY Returns True iff the specified annotation is both a simple
--| annotation and has the same keyword as the specified keyword.
--|
function Keywords_Match
(This_Simple_Annotation : in Simple_Annotation;
This_Simple_Keyword : in Simple_Keywords) return Boolean;
--| @SUMMARY Returns True iff the specified annotation is both a valued
--| annotation and has the same keyword as the specified keyword.
--|
function Keywords_Match
(This_Valued_Annotation : in Valued_Annotation;
This_Valued_Keyword : in Valued_Keywords) return Boolean;
--| @SUMMARY Returns the "value" of the specified line.
--|
--| @DESCRIPTION The value of a valued annotation is everything after
--| the argument delimiter.
--|
--| The value of an ordinary line is simply the line itself.
--|
--| The value of a simple annotation is the null string.
--|
function Value_Of (This_Line : in Line) return String;
--| @SUMMARY Given a keyword, returns a simple annotation.
--|
function Simple_Annotation_From
(This_Keyword : in Simple_Keywords) return Line;
--| @SUMMARY Given a keyword and an argument, returns a valued annotation.
--|
function Valued_Annotation_From
(This_Keyword : in Valued_Keywords; This_Argument : in String)
return Line;
--| @SUMMARY Returns True iff the specified valued annotation has an
--| argument that matches the specified argument.
--|
generic
type Arguments is (<>);
function Arguments_Match (This_Valued_Annotation : in Valued_Annotation;
This_Argument : in Arguments) return Boolean;
Not_Initialized : exception;
end Structured_Text_Generic;
nblk1=5
nid=0
hdr6=a
[0x00] rec0=1a rec1=00 rec2=01 rec3=042
[0x01] rec0=1a rec1=00 rec2=02 rec3=020
[0x02] rec0=1d rec1=00 rec2=03 rec3=052
[0x03] rec0=18 rec1=00 rec2=04 rec3=068
[0x04] rec0=18 rec1=00 rec2=05 rec3=000
tail 0x2150045f0815c6672d5ea 0x42a00088462061e03