Created Tuesday 18 November 2008
Ready to be merged
Allow more than 26 names for generic parameters
Generic parameters instead of being one letter will be composed of:
diff -r 66ff74a91036 src/parser.li
--- a/src/parser.li Sat Aug 30 21:52:37 2008 +0200
+++ b/src/parser.li Sat Aug 30 21:57:17 2008 +0200
@@ -1513,6 +1513,7 @@
+ continue:BOOLEAN;
+ t,result:ITM_TYPE_MONO;
+ old_pos,old_derive,sav_derive:INTEGER;
+ + type_parameter:BOOLEAN;
(read_cap_identifier).if {
old_pos := position;
@@ -1553,9 +1554,16 @@
(! read_character ']').if {
warning_error (current_position,"Added ']'.");
}; // if
- } else {
- // Simple type.
- (name.count = 1).if {
+ } else {
+ type_parameter := TRUE;
+ // Simple type.
+ (name.lower+1).to (name.upper) do { i:INTEGER;
+ name.item i.is_digit.if_false {
+ type_parameter := FALSE;
+ };
+ };
+ // (name.count = 1).if {
+ type_parameter.if {
(style != NULL).if {
string_tmp.copy "Style `";
string_tmp.append style;
Make this information public in the reference manual