Conversation
|
Just a thought, why not to have also something like "Open_Flat_Record" or "Open_Unnested_Record" that would not format the beginning and end of a record, so to avoid having unreadable records from deep record hierarchies (I think Steven mentioned this problem at some point). In that case the first step is called via |
swbaird
left a comment
There was a problem hiding this comment.
A few minor cleanup issues, although the problem with a procedures illegally being primitives of two different tagged types (Formatter and Formatter_Parameters) might require adding a nested package or some similar minor reorganization.
I wrote these comments with the Ada Compatibility Mode version in mind, although some of them may also apply to the Flare version.
| Modular_Type, | ||
| Float_Type, | ||
| Decimal_Type, | ||
| Ordinary_Type |
There was a problem hiding this comment.
Ordinary_Fixed_Point_Type (with a comma).
And four uses below (in subtype ranges).
Alternatively, just list how this package spec differs from the Flare version.
| Protected_Type, | ||
| Task_Type); | ||
|
|
||
| type Elementary_Type is Ada_Type range Access_Type .. Ordinary_Type; |
There was a problem hiding this comment.
What is intended here (and in the next 6 declarations)? Subtype declarations (so "type" should be "subtype") or derived type declarations (so the word "new" is missing)? I'm guessing subtypes. Either way, some fix is needed.
|
|
||
| function Create | ||
| (Self : in out Root_Formatter_Parameters; | ||
| Format : String) return Root_Formatter_Parameters |
There was a problem hiding this comment.
";" needed
function must be abstract because result type is abstract
| Buffer : in out Root_Buffer_Type; | ||
| Type_Name : UTF_Encoding.UTF_8_String; | ||
| Item : System.Address; | ||
| Format : Root_Formatter_Parameters; |
There was a problem hiding this comment.
extra ";"
Ditto for the next 25 subprograms.
a subprogram cannot be a primitive operation of two tagged types (Root_Formatter_Type and Root_Formatter_Parameters).
Ditto for the next 25 subprograms.
| procedure Close ( | ||
| Self : in out Root_Buffer_Type; | ||
| Self : in out Root_Formatter_Type; | ||
| Buffer : in out Root_Buffer_Type; |
| Self : in out Root_Formatter_Type; | ||
| Buffer : in out Root_Buffer_Type; | ||
| ); | ||
| end Root_Formatter_Type with private; |
There was a problem hiding this comment.
looks like incomplete editing after copying the Flare version. Perhaps replace this line and the next 3 with
type Default_Formatter_Type is new Root_Formatter_Type with private;
?
| -- Implementation-Defined | ||
| end Default_Formatter_Type; | ||
|
|
||
| Default_Formatter : Default_Formatter_Type; |
There was a problem hiding this comment.
missing "constant" (declaration is illegal without it)
| Buffer : in out Root_Buffer_Type; | ||
| Type_Name : UTF_Encoding.UTF_8_String; | ||
| Format : Root_Formatter_Parameters; | ||
| ); |
There was a problem hiding this comment.
Should this (and the following dozen or so procedures) be abstract?
No description provided.