From colnet at users.gforge.inria.fr Tue Dec 20 10:07:29 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 09:07:29 +0000 Subject: [Smarteiffel-commits] r6719 - trunk/tools Message-ID: <20051220_090729_016783. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-20 09:07:28 +0000 (Tue, 20 Dec 2005) New Revision: 6719 Modified: trunk/tools/smart_eiffel.e Log: Started 2.3 and trying svn... Modified: trunk/tools/smart_eiffel.e =================================================================== --- trunk/tools/smart_eiffel.e 2005-12-19 15:55:45 UTC (rev 6718) +++ trunk/tools/smart_eiffel.e 2005-12-20 09:07:28 UTC (rev 6719) @@ -27,7 +27,7 @@ ]") end - release_number: STRING is "Release 2.2 (Monday December 19th 2005) [Pomme de terre]%N" + release_number: STRING is "Release 2.3 (???? January ??th 2006) [?????? ?????]%N" status: STATUS is once From colnet at users.gforge.inria.fr Tue Dec 20 11:12:53 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 10:12:53 +0000 Subject: [Smarteiffel-commits] r6720 - trunk/lib/string Message-ID: <20051220_101253_017242. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-20 10:12:52 +0000 (Tue, 20 Dec 2005) New Revision: 6720 Modified: trunk/lib/string/string.e Log: Old obsolete removed. Modified: trunk/lib/string/string.e =================================================================== --- trunk/lib/string/string.e 2005-12-20 09:07:28 UTC (rev 6719) +++ trunk/lib/string/string.e 2005-12-20 10:12:52 UTC (rev 6720) @@ -1100,12 +1100,6 @@ capacity >= old capacity end - clear is - obsolete "The new name is now `clear_count' (July 2004)." - do - clear_count - end - clear_count, wipe_out is -- Discard all characters so that `is_empty' is True after that call. -- The internal `capacity' is not changed by this call (i.e. the internal `storage' memory is From colnet at users.gforge.inria.fr Tue Dec 20 11:50:48 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 10:50:48 +0000 Subject: [Smarteiffel-commits] r6721 - in trunk Message-ID: <20051220_105048_086850. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-20 10:50:47 +0000 (Tue, 20 Dec 2005) New Revision: 6721 Modified: trunk/tools/expression/create_expression.e trunk/tools/instruction/create_instruction.e trunk/tools/kernel/string_aliaser.e trunk/tools/smart_eiffel.e trunk/tools/utils/aliased_string_list.e trunk/work/lib_test3/bad_create_dictionary1.msg trunk/work/lib_test3/bad_create_dictionary2.msg trunk/work/lib_test3/c_self_test.ok Log: Removed old automatic replacement of DICTIONARY with HASHED_DICTIONARY (as well for SET / HASHED_SET). Modified: trunk/tools/expression/create_expression.e =================================================================== --- trunk/tools/expression/create_expression.e 2005-12-20 10:12:52 UTC (rev 6720) +++ trunk/tools/expression/create_expression.e 2005-12-20 10:50:47 UTC (rev 6721) @@ -60,7 +60,7 @@ specialize_2 (type: TYPE): like Current is local created_type_memory: TYPE; c: like call; fake_target: FAKE_TARGET; fs: FEATURE_STAMP; name: FEATURE_NAME - test_default: BOOLEAN; tm: like explicit_type + test_default: BOOLEAN do created_type_memory := created_type(type) if call = Void then @@ -82,15 +82,6 @@ fs := any_default_create_fs.resolve_dynamic_binding_for(created_type_memory) default_create_call := c.feature_stamp = fs end - -- To check/replace create {DICTIONARY} with create {HASHED_DICTIONARY} (or SET...), created_type_memory is computed: - tm := created_type_memory.canonical_type_mark - tm := smart_eiffel.deferred_dictionary_or_set_creation_check(explicit_type.start_position, tm) - if tm /= Void then - explicit_type := tm - created_type_memory := tm.type - c.deferred_dictionary_or_set_fix(created_type_memory) - end - -- check/replace warning done. Result := current_or_twin_init(explicit_type, c) Result.specialize_2_checks(type) ensure then Modified: trunk/tools/instruction/create_instruction.e =================================================================== --- trunk/tools/instruction/create_instruction.e 2005-12-20 10:12:52 UTC (rev 6720) +++ trunk/tools/instruction/create_instruction.e 2005-12-20 10:50:47 UTC (rev 6721) @@ -247,29 +247,15 @@ specialize_2_without_checks (type: TYPE): like Current is local - w: like writable; c: like call; tm: TYPE_MARK; creation_type: TYPE; fs: FEATURE_STAMP + w: like writable; c: like call; creation_type: TYPE; fs: FEATURE_STAMP name: FEATURE_NAME; test_default: BOOLEAN do w := writable.specialize_2(type) - -- To check/replace create {DICTIONARY} with create {HASHED_DICTIONARY} (or SET...), creation_type - -- is computed: if explicit_type /= Void then - tm := explicit_type.to_static(type) - creation_type := tm.type + creation_type := explicit_type.resolve_in(type) else creation_type := w.resolve_in(type) - tm := creation_type.canonical_type_mark end - tm := smart_eiffel.deferred_dictionary_or_set_creation_check(start_position, tm) - if tm /= Void then - create {CREATE_WRITABLE} w.make_specialized(tm, w) - explicit_type := tm - if call /= Void then - call.set_target(w) - end - creation_type := explicit_type.resolve_in(type) - end - -- check/replace warning done. if call = Void then -- Create the call to the default creation feature if it is implicit. default_create_call := True Modified: trunk/tools/kernel/string_aliaser.e =================================================================== --- trunk/tools/kernel/string_aliaser.e 2005-12-20 10:12:52 UTC (rev 6720) +++ trunk/tools/kernel/string_aliaser.e 2005-12-20 10:50:47 UTC (rev 6721) @@ -108,14 +108,11 @@ create_hashed_string(as_array), create_hashed_string(as_boolean), create_hashed_string(as_character), - create_hashed_string(as_dictionary), create_hashed_string(as_disposable), create_hashed_string(as_double), create_hashed_string(as_exceptions), create_hashed_string(as_fixed_array), create_hashed_string(as_function), - create_hashed_string(as_hashed_dictionary), - create_hashed_string(as_hashed_set), create_hashed_string(as_integer_general), create_hashed_string(as_integer_8), create_hashed_string(as_integer_16), Modified: trunk/tools/smart_eiffel.e =================================================================== --- trunk/tools/smart_eiffel.e 2005-12-20 10:12:52 UTC (rev 6720) +++ trunk/tools/smart_eiffel.e 2005-12-20 10:50:47 UTC (rev 6721) @@ -246,51 +246,6 @@ free_inline_memo.add_last(im) end -feature {CREATE_INSTRUCTION, CREATE_EXPRESSION} - deferred_dictionary_or_set_creation_check (p: POSITION; tm: TYPE_MARK): TYPE_MARK is - -- Temporary check to help user to switch from DICTIONARY to HASHED_DICTIONARY / AVL_DICTIONARY. Here `p' is supposed to - -- be the creation statement's position for the `tm' to check/replace. The non Void `Result' indicates a warning and is a - -- replacement of `tm' from DICTIONARY to HASHED_DICTIONARY. (This code has been added in August 2003.) Ditto for SET. - require - not p.is_unknown - tm.is_static - local - cn: CLASS_NAME; s: STRING - do - s := tm.class_text_name.to_string - if s = as_dictionary then - error_handler.add_position(p) - error_handler.append("Class DICTIONARY is now a deferred class with two different implementations: % - %HASHED_DICTIONARY and AVL_DICTIONARY. The HASHED_DICTIONARY implementation corresponds to % - %the good old DICTIONARY class (i.e. hash_code based implementation). The new AVL_DICTIONARY % - %implementation is a tree based implementation with a different generic constraint. Please, % - %also note that it is not necessary to change the corresponding declaration of the target % - %entity and that you can select the best implementation by changing only this create % - %statement.") - error_handler.print_as_warning - create cn.make(string_aliaser.hashed_string(as_hashed_dictionary), tm.start_position) - create {USER_GENERIC_TYPE_MARK} Result.make(cn, tm.generic_list) - error_handler.add_position(p) - error_handler.append("Automatic replacement of DICTIONARY with HASHED_DICTIONARY here (please update your code).") - error_handler.print_as_warning - elseif s = as_set then - error_handler.add_position(p) - error_handler.append("Class SET is now a deferred class with two different implementations: % - %HASHED_SET and AVL_SET. The HASHED_SET implementation corresponds to % - %the good old SET class (i.e. hash_code based implementation). The new AVL_SET % - %implementation is a tree based implementation with a different generic constraint. Please, % - %also note that it is not necessary to change the corresponding declaration of the target % - %entity and that you can select the best implementation by changing only this create % - %statement.") - error_handler.print_as_warning - create cn.make(string_aliaser.hashed_string(as_hashed_set), tm.start_position) - create {USER_GENERIC_TYPE_MARK} Result.make(cn, tm.generic_list) - error_handler.add_position(p) - error_handler.append("Automatic replacement of SET with HASHED_SET here (please update your code).") - error_handler.print_as_warning - end - end - feature {TYPE} is_checking_signature: BOOLEAN is -- When `True', we are checking a signature conformance. In that case, we must not be hindered by "conforming" or Modified: trunk/tools/utils/aliased_string_list.e =================================================================== --- trunk/tools/utils/aliased_string_list.e 2005-12-20 10:12:52 UTC (rev 6720) +++ trunk/tools/utils/aliased_string_list.e 2005-12-20 10:50:47 UTC (rev 6721) @@ -15,8 +15,6 @@ as_character: STRING is "CHARACTER" - as_dictionary: STRING is "DICTIONARY" - as_disposable: STRING is "DISPOSABLE" as_double: STRING is "DOUBLE" @@ -37,10 +35,6 @@ as_function: STRING is "FUNCTION" - as_hashed_dictionary: STRING is "HASHED_DICTIONARY" - - as_hashed_set: STRING is "HASHED_SET" - as_integer_general: STRING is "INTEGER_GENERAL" as_integer_8: STRING is "INTEGER_8" Modified: trunk/work/lib_test3/bad_create_dictionary1.msg =================================================================== --- trunk/work/lib_test3/bad_create_dictionary1.msg 2005-12-20 10:12:52 UTC (rev 6720) +++ trunk/work/lib_test3/bad_create_dictionary1.msg 2005-12-20 10:50:47 UTC (rev 6721) @@ -1,20 +1,8 @@ -****** Warning: Class DICTIONARY is now a deferred class with -two different implementations: HASHED_DICTIONARY and AVL_DICTIONARY. -The HASHED_DICTIONARY implementation corresponds to the good old -DICTIONARY class (i.e. hash_code based implementation). The new -AVL_DICTIONARY implementation is a tree based implementation with -a different generic constraint. Please, also note that it is not -necessary to change the corresponding declaration of the target -entity and that you can select the best implementation by changing -only this create statement. -Line 11 column 19 in BAD_CREATE_DICTIONARY1 (/home/colnet/SmartEiffel/work/lib_test3/bad_create_dictionary1.e): - dico := create {DICTIONARY[INTEGER, INTEGER]}.make - ^ +****** Fatal Error: Type DICTIONARY[INTEGER,INTEGER] is deferred. +(Cannot create object.) + +Line 11 column 11 in BAD_CREATE_DICTIONARY1 (/home/colnet/SmartEiffel/work/lib_test3/bad_create_dictionary1.e): + dico := create {DICTIONARY[INTEGER, INTEGER]}.make + ^ ------ -****** Warning: Automatic replacement of DICTIONARY with HASHED_DICTIONARY -here (please update your code). -Line 11 column 19 in BAD_CREATE_DICTIONARY1 (/home/colnet/SmartEiffel/work/lib_test3/bad_create_dictionary1.e): - dico := create {DICTIONARY[INTEGER, INTEGER]}.make - ^ ------- -****** 2 warnings. +Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_create_dictionary2.msg =================================================================== --- trunk/work/lib_test3/bad_create_dictionary2.msg 2005-12-20 10:12:52 UTC (rev 6720) +++ trunk/work/lib_test3/bad_create_dictionary2.msg 2005-12-20 10:50:47 UTC (rev 6721) @@ -1,20 +1,8 @@ -****** Warning: Class DICTIONARY is now a deferred class with -two different implementations: HASHED_DICTIONARY and AVL_DICTIONARY. -The HASHED_DICTIONARY implementation corresponds to the good old -DICTIONARY class (i.e. hash_code based implementation). The new -AVL_DICTIONARY implementation is a tree based implementation with -a different generic constraint. Please, also note that it is not -necessary to change the corresponding declaration of the target -entity and that you can select the best implementation by changing -only this create statement. +****** Fatal Error: Type DICTIONARY[INTEGER,INTEGER] is deferred. +(Cannot create object.) + Line 11 column 3 in BAD_CREATE_DICTIONARY2 (/home/colnet/SmartEiffel/work/lib_test3/bad_create_dictionary2.e): - create dico.make - ^ + create dico.make + ^ ------ -****** Warning: Automatic replacement of DICTIONARY with HASHED_DICTIONARY -here (please update your code). -Line 11 column 3 in BAD_CREATE_DICTIONARY2 (/home/colnet/SmartEiffel/work/lib_test3/bad_create_dictionary2.e): - create dico.make - ^ ------- -****** 2 warnings. +Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/c_self_test.ok =================================================================== --- trunk/work/lib_test3/c_self_test.ok 2005-12-20 10:12:52 UTC (rev 6720) +++ trunk/work/lib_test3/c_self_test.ok 2005-12-20 10:50:47 UTC (rev 6721) @@ -90,8 +90,8 @@ bad_create6.e...1.. bad_create7.e...1.. bad_create8.e...1.. -bad_create_dictionary1.e...0.. -bad_create_dictionary2.e...0.. +bad_create_dictionary1.e...1.. +bad_create_dictionary2.e...1.. bad_creation1.e...0.. bad_creation2.e...1.. bad_creation3.e...1.. From colnet at users.gforge.inria.fr Tue Dec 20 15:46:42 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 14:46:42 +0000 Subject: [Smarteiffel-commits] r6722 - in trunk Message-ID: <20051220_144642_059375. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-20 14:46:40 +0000 (Tue, 20 Dec 2005) New Revision: 6722 Modified: trunk/lib/abilities/observable.e trunk/lib/design_patterns/chain_of_responsibility.e trunk/lib/kernel/hierarchic_graph_node.e trunk/lib/kernel/loaded_hierarchic_graph_node.e trunk/lib/net/low_level/socket_server.e trunk/lib/sequencer/loop_item.e trunk/lib/signal/signal_0.e trunk/lib/signal/signal_1.e trunk/lib/signal/signal_2.e trunk/lib/signal/signal_4.e trunk/lib/storage/collection.e trunk/lib/storage/collection/array.e trunk/lib/storage/collection/fast_array.e trunk/lib/storage/collection/linked_list.e trunk/lib/storage/collection/ring_array.e trunk/lib/storage/collection/two_way_linked_list.e trunk/lib/storage/internal/linked_collection.e trunk/lib/string/unicode_string.e trunk/lib/vision/container.e trunk/lib/vision/decoration/decorator.e trunk/tools/commands/install.e trunk/tools/commands/se.e trunk/tools/generation/code_printer.e trunk/tools/install/c_mode.e trunk/tools/kernel/helpers/agent_creation_helper.e trunk/tools/kernel/live_type.e trunk/tools/kernel/pools/agent_pool.e trunk/tools/kernel/system_tools.e trunk/tools/smart_eiffel.e trunk/work/html/site/source/misc/_HISTORY.html trunk/work/lib_test1/aux_generic6ll.e trunk/work/lib_test1/aux_generic7ll.e trunk/work/lib_test1/test_array.e trunk/work/lib_test1/test_array_expanded.e trunk/work/lib_test1/test_dictionary1.e trunk/work/lib_test1/test_dictionary2.e trunk/work/lib_test1/test_index_of1.e trunk/work/lib_test1/test_index_of2.e trunk/work/lib_test1/test_manifest_array.e trunk/work/lib_test_dpsrc/code/behavior/command/composite.e trunk/work/lib_test_dpsrc/code/behavior/observer/autonomous_subject.e trunk/work/lib_test_dpsrc/code/behavior/state2/network.e trunk/work/lib_test_dpsrc/code/behavior/visitor/composite.e trunk/work/lib_test_dpsrc/code/struct/composite/composite.e Log: In class COLLECTION, features `index_of' and `fast_index_of' now have an extra argument to indicate where the search must start (as in class STRING). Modified: trunk/lib/abilities/observable.e =================================================================== --- trunk/lib/abilities/observable.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/abilities/observable.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -22,7 +22,7 @@ local i: INTEGER do - i := observers.index_of(o) + i := observers.first_index_of(o) observers.remove(i) end Modified: trunk/lib/design_patterns/chain_of_responsibility.e =================================================================== --- trunk/lib/design_patterns/chain_of_responsibility.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/design_patterns/chain_of_responsibility.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -29,7 +29,7 @@ local i: INTEGER do - i := chain.index_of(c) + i := chain.first_index_of(c) chain.remove(i) end Modified: trunk/lib/kernel/hierarchic_graph_node.e =================================================================== --- trunk/lib/kernel/hierarchic_graph_node.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/kernel/hierarchic_graph_node.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -89,11 +89,11 @@ local i: INTEGER; tmp: like children_edge do - i := node.children.fast_index_of(Current) + i := node.children.fast_first_index_of(Current) tmp := node.children_edge node.children.remove(i) tmp.remove(i) - i := parents.fast_index_of(node) + i := parents.fast_first_index_of(node) parents.remove(i) parents_edge.remove(i) end @@ -114,11 +114,11 @@ local i: INTEGER; tmp: like parents_edge do - i := node.parents.fast_index_of(Current) + i := node.parents.fast_first_index_of(Current) tmp := node.parents_edge node.parents.remove(i) tmp.remove(i) - i := children.index_of(node) + i := children.first_index_of(node) children.remove(i) children_edge.remove(i) end @@ -130,10 +130,10 @@ local i: INTEGER; tmp: like children_edge do - i := parents_edge.fast_index_of(id) + i := parents_edge.fast_first_index_of(id) Result := parents.item(i) tmp := Result.children_edge - tmp.put(-1, tmp.fast_index_of(id)) + tmp.put(-1, tmp.fast_first_index_of(id)) parents_edge.put(-1, i) ensure not has_parent_edge(id) @@ -177,10 +177,10 @@ local i: INTEGER; tmp: like parents_edge do - i := children_edge.fast_index_of(id) + i := children_edge.fast_first_index_of(id) Result := children.item(i) tmp := Result.parents_edge - tmp.put(-1, tmp.fast_index_of(id)) + tmp.put(-1, tmp.fast_first_index_of(id)) children_edge.put(-1, i) ensure not has_child_edge(id) Modified: trunk/lib/kernel/loaded_hierarchic_graph_node.e =================================================================== --- trunk/lib/kernel/loaded_hierarchic_graph_node.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/kernel/loaded_hierarchic_graph_node.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -56,7 +56,7 @@ i: INTEGER do -- possible improvement - i := node.children.fast_index_of(Current) + i := node.children.fast_first_index_of(Current) Precursor(node) parents_edge_load.remove(i) end @@ -66,7 +66,7 @@ i: INTEGER do -- possible improvement - i := node.parents.fast_index_of(Current) + i := node.parents.fast_first_index_of(Current) Precursor(node) children_edge_load.remove(i) end Modified: trunk/lib/net/low_level/socket_server.e =================================================================== --- trunk/lib/net/low_level/socket_server.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/net/low_level/socket_server.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -126,7 +126,7 @@ local i: INTEGER do - i := connected_sockets.index_of(socket) + i := connected_sockets.first_index_of(socket) connected_sockets.remove(i) put_disconnected_socket(socket) ensure Modified: trunk/lib/sequencer/loop_item.e =================================================================== --- trunk/lib/sequencer/loop_item.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/sequencer/loop_item.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -92,7 +92,7 @@ loop ready_jobs.item(i).continue if ready_jobs.item(i).done then - job_list.remove(job_list.fast_index_of(ready_jobs.item(i))) + job_list.remove(job_list.fast_first_index_of(ready_jobs.item(i))) finished_jobs.add_last(ready_jobs.item(i)) end i := i - 1 Modified: trunk/lib/signal/signal_0.e =================================================================== --- trunk/lib/signal/signal_0.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/signal/signal_0.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -67,7 +67,7 @@ local i: INTEGER do - i := callbacks.fast_index_of(connect_identifier) + i := callbacks.fast_first_index_of(connect_identifier) if callbacks.valid_index(i) then callbacks.remove(i) last := last - 1 Modified: trunk/lib/signal/signal_1.e =================================================================== --- trunk/lib/signal/signal_1.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/signal/signal_1.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -69,7 +69,7 @@ local i: INTEGER do - i := callbacks.fast_index_of(connect_identifier) + i := callbacks.fast_first_index_of(connect_identifier) if callbacks.valid_index(i) then callbacks.remove(i) last := last - 1 Modified: trunk/lib/signal/signal_2.e =================================================================== --- trunk/lib/signal/signal_2.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/signal/signal_2.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -70,7 +70,7 @@ local i: INTEGER do - i := callbacks.fast_index_of(connect_identifier) + i := callbacks.fast_first_index_of(connect_identifier) if callbacks.valid_index(i) then callbacks.remove(i) last := last - 1 Modified: trunk/lib/signal/signal_4.e =================================================================== --- trunk/lib/signal/signal_4.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/signal/signal_4.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -72,7 +72,7 @@ local i: INTEGER do - i := callbacks.fast_index_of(connect_identifier) + i := callbacks.fast_first_index_of(connect_identifier) if callbacks.valid_index(i) then callbacks.remove(i) last := last - 1 Modified: trunk/lib/storage/collection/array.e =================================================================== --- trunk/lib/storage/collection/array.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/storage/collection/array.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -312,7 +312,7 @@ Result := storage.fast_occurrences(element, upper - lower) end - index_of (element: like item): INTEGER is + first_index_of (element: like item): INTEGER is do if upper >= lower then Result := lower + storage.first_index_of(element, upper - lower) @@ -321,6 +321,15 @@ end end + index_of (element: like item; start_index: INTEGER): INTEGER is + do + if upper >= lower then + Result := lower + storage.index_of(element, start_index - lower, upper - lower) + else + Result := lower + end + end + reverse_index_of (element: like item; start_index: INTEGER): INTEGER is do if upper >= lower then @@ -330,7 +339,7 @@ end end - fast_index_of (element: like item): INTEGER is + fast_first_index_of (element: like item): INTEGER is do if upper >= lower then Result := lower + storage.fast_first_index_of(element, upper - lower) @@ -339,6 +348,15 @@ end end + fast_index_of (element: like item; start_index: INTEGER): INTEGER is + do + if upper >= lower then + Result := lower + storage.fast_index_of(element, start_index - lower, upper - lower) + else + Result := lower + end + end + fast_reverse_index_of (element: like item; start_index: INTEGER): INTEGER is do if upper >= lower then Modified: trunk/lib/storage/collection/fast_array.e =================================================================== --- trunk/lib/storage/collection/fast_array.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/storage/collection/fast_array.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -17,8 +17,6 @@ inherit ARRAYED_COLLECTION[E_] - redefine first_index_of - end creation {ANY} make, with_capacity, from_collection, manifest_creation @@ -241,7 +239,7 @@ Result := storage.fast_occurrences(element, upper) end - index_of (element: like item): INTEGER is + first_index_of (element: like item): INTEGER is do if upper >= 0 then Result := storage.first_index_of(element, upper) @@ -252,15 +250,26 @@ end end + index_of (element: like item; start_index: INTEGER): INTEGER is + do + if upper >= 0 then + Result := storage.index_of(element, start_index, upper) + else + check + Result = 0 + end + end + end + reverse_index_of (element: like item; start_index: INTEGER): INTEGER is do Result := storage.reverse_index_of(element, start_index) end - first_index_of (element: like item): INTEGER is + fast_first_index_of (element: like item): INTEGER is do if upper >= 0 then - Result := storage.first_index_of(element, upper) + Result := storage.fast_index_of(element, lower, upper) else check Result = 0 @@ -268,10 +277,14 @@ end end - fast_index_of (element: like item): INTEGER is + fast_index_of (element: like item; start_index: INTEGER): INTEGER is do if upper >= 0 then - Result := storage.fast_first_index_of(element, upper) + Result := storage.fast_index_of(element, start_index, upper) + else + check + Result = 0 + end end end Modified: trunk/lib/storage/collection/linked_list.e =================================================================== --- trunk/lib/storage/collection/linked_list.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/storage/collection/linked_list.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -232,12 +232,12 @@ end end - index_of (x: like item): INTEGER is + index_of (x: like item; start_index: INTEGER): INTEGER is local safe_equal: SAFE_EQUAL[E_] do from - Result := lower + Result := start_index until Result > upper or else safe_equal.test(x, item(Result)) loop @@ -272,12 +272,12 @@ end end - fast_index_of (x: like item): INTEGER is + fast_index_of (x: like item; start_index: INTEGER): INTEGER is local u: like upper do from - Result := lower + Result := start_index u := upper until Result > u or else x = item(Result) Modified: trunk/lib/storage/collection/ring_array.e =================================================================== --- trunk/lib/storage/collection/ring_array.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/storage/collection/ring_array.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -387,7 +387,7 @@ end end - index_of (element: like item): INTEGER is + first_index_of (element: like item): INTEGER is local s_u: INTEGER do @@ -408,6 +408,28 @@ end end + index_of (element: like item; start_index: INTEGER): INTEGER is + local + s_start_index, s_u: INTEGER + do + if is_empty then + Result := upper + 1 + else + s_u := storage_upper + s_start_index := storage_index(start_index) + if s_start_index <= s_u then + Result := storage.index_of(element, s_start_index, s_u) + lower - storage_lower + else + Result := storage.index_of(element, s_start_index, capacity - 1) + if Result = capacity then + Result := storage.first_index_of(element, s_u) + upper - s_u + else + Result := Result + lower - storage_lower + end + end + end + end + reverse_index_of (element: like item; start_index: INTEGER): INTEGER is local safe_equal: SAFE_EQUAL[E_] @@ -421,7 +443,7 @@ end end - fast_index_of (element: like item): INTEGER is + fast_first_index_of (element: like item): INTEGER is local s_u: INTEGER do @@ -442,6 +464,28 @@ end end + fast_index_of (element: like item; start_index: INTEGER): INTEGER is + local + s_start_index, s_u: INTEGER + do + if is_empty then + Result := upper + 1 + else + s_u := storage_upper + s_start_index := storage_index(start_index) + if s_start_index <= s_u then + Result := storage.fast_index_of(element, s_start_index, s_u) + lower - storage_lower + else + Result := storage.fast_index_of(element, s_start_index, capacity - 1) + if Result = capacity then + Result := storage.fast_first_index_of(element, s_u) + upper - s_u + else + Result := Result + lower - storage_lower + end + end + end + end + fast_reverse_index_of (element: like item; start_index: INTEGER): INTEGER is do from Modified: trunk/lib/storage/collection/two_way_linked_list.e =================================================================== --- trunk/lib/storage/collection/two_way_linked_list.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/storage/collection/two_way_linked_list.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -234,12 +234,12 @@ end end - index_of (x: like item): INTEGER is + index_of (x: like item; start_index: INTEGER): INTEGER is local safe_equal: SAFE_EQUAL[E_] do from - Result := lower + Result := start_index until Result > upper or else safe_equal.test(x, item(Result)) loop @@ -270,12 +270,12 @@ end end - fast_index_of (x: like item): INTEGER is + fast_index_of (x: like item; start_index: INTEGER): INTEGER is local u: like upper do from - Result := lower + Result := start_index u := upper until Result > u or else x = item(Result) Modified: trunk/lib/storage/collection.e =================================================================== --- trunk/lib/storage/collection.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/storage/collection.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -310,7 +310,7 @@ -- -- See also `fast_has', `index_of', `fast_index_of'. do - Result := valid_index(index_of(x)) + Result := valid_index(first_index_of(x)) end fast_has (x: like item): BOOLEAN is @@ -318,7 +318,7 @@ -- -- See also `has', `fast_index_of', `index_of'. do - Result := valid_index(fast_index_of(x)) + Result := valid_index(fast_first_index_of(x)) end first_index_of (element: like item): INTEGER is @@ -326,20 +326,19 @@ -- Answer `upper + 1' when `element' is not inside. -- -- See also `fast_first_index_of', `index_of', `last_index_of', `reverse_index_of'. - do - Result := index_of(element) + deferred ensure - definition: -- Result = index_of(c, lower) + definition: Result = index_of(element, lower) end - index_of (element: like item): INTEGER is - -- Warning, this feature will change in the near future. - -- Warning: this feature will have soon one extra argument as the one in class STRING. + index_of (element: like item; start_index: INTEGER): INTEGER is + -- Using `is_equal' for comparison, gives the index of the first occurrence of `element' at or after + -- `start_index'. Answer `upper + 1' when `element' when the search fail. -- - -- It is better to use `first_index_of' right now (Oct 6th 2005). + -- See also `fast_index_of', `reverse_index_of', `first_index_of'. deferred ensure - Result.in_range(lower, upper + 1) + Result.in_range(start_index, upper + 1) valid_index(Result) implies (create {SAFE_EQUAL[E_]}).test(element, item(Result)) end @@ -374,21 +373,19 @@ -- Answer `upper + 1' when `element' is not inside. -- -- See also `first_index_of', `last_index_of', `fast_last_index_of'. - do - Result := fast_index_of(element) + deferred ensure - Result.in_range(lower, upper + 1) - valid_index(Result) implies element = item(Result) + definition: Result = fast_index_of(element, lower) end - fast_index_of (element: like item): INTEGER is - -- Warning, this feature will change in the near future. - -- Warning: this feature will have soon one extra argument as the one in class STRING. + fast_index_of (element: like item; start_index: INTEGER): INTEGER is + -- Using basic `=' for comparison, gives the index of the first occurrence of `element' at or after + -- `start_index'. Answer `upper + 1' when `element' when the search fail. -- - -- It is better to use `fast_first_index_of' right now (Oct 6th 2005). + -- See also `index_of', `fast_reverse_index_of', `fast_first_index_of'. deferred ensure - Result.in_range(lower, upper + 1) + Result.in_range(start_index, upper + 1) valid_index(Result) implies element = item(Result) end Modified: trunk/lib/storage/internal/linked_collection.e =================================================================== --- trunk/lib/storage/internal/linked_collection.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/storage/internal/linked_collection.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -48,6 +48,16 @@ end end + first_index_of (element: like item): INTEGER is + do + Result := index_of(element, lower) + end + + fast_first_index_of (element: like item): INTEGER is + do + Result := fast_index_of(element, lower) + end + feature {} -- Implement manifest generic creation. manifest_make (needed_capacity: INTEGER) is -- Manifest creation of a list of items of type E_. Modified: trunk/lib/string/unicode_string.e =================================================================== --- trunk/lib/string/unicode_string.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/string/unicode_string.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -1642,7 +1642,7 @@ low_surrogate_indexes.has(index) do --|*** Should use dichotomic search - Result := low_surrogate_indexes.fast_index_of(index) + Result := low_surrogate_indexes.fast_first_index_of(index) ensure low_surrogate_values.valid_index(Result) end Modified: trunk/lib/vision/container.e =================================================================== --- trunk/lib/vision/container.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/vision/container.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -143,7 +143,7 @@ has_child(w) do w.set_parent(Void) - child.remove(child.fast_index_of(w)) + child.remove(child.fast_first_index_of(w)) child_requisition_changed ensure child.count = old child.count - 1 Modified: trunk/lib/vision/decoration/decorator.e =================================================================== --- trunk/lib/vision/decoration/decorator.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/lib/vision/decoration/decorator.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -243,13 +243,13 @@ found2 := True seg.add_first(p) join(seg, seg2, True, True) - idx := list.index_of(seg2) + idx := list.first_index_of(seg2) list.remove(idx) elseif p.is_equal(seg2.last) then found2 := True seg.add_first(p) join(seg, seg2, True, False) - idx := list.index_of(seg2) + idx := list.first_index_of(seg2) list.remove(idx) end end @@ -284,13 +284,13 @@ found2 := True seg.add_last(p) join(seg, seg2, False, False) - idx := list.index_of(seg2) + idx := list.first_index_of(seg2) list.remove(idx) elseif p.is_equal(seg2.last) then found2 := True seg.add_last(p) join(seg, seg2, False, True) - idx := list.index_of(seg2) + idx := list.first_index_of(seg2) list.remove(idx) end end Modified: trunk/tools/commands/install.e =================================================================== --- trunk/tools/commands/install.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/tools/commands/install.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -176,7 +176,7 @@ if inifile.has(fz_conf_compiler_type) then c := inifile.item(fz_conf_compiler_type) if c /= Void and then not c.is_equal(fz_none) and then system_tools.compiler_list.has(c) then - c := system_tools.compiler_list.item(system_tools.compiler_list.index_of(c)) + c := system_tools.compiler_list.item(system_tools.compiler_list.first_index_of(c)) c_compiler_rc_map.add(c, key) debug io.put_string(once "C: ") @@ -207,7 +207,7 @@ c := inifile.item(fz_conf_cpp_compiler_type) if c /= Void and then not c.is_equal(fz_none) then if system_tools.c_plus_plus_compiler_list.has(c) then - c := system_tools.c_plus_plus_compiler_list.item(system_tools.c_plus_plus_compiler_list.index_of(c)) + c := system_tools.c_plus_plus_compiler_list.item(system_tools.c_plus_plus_compiler_list.first_index_of(c)) cpp_compiler_rc_map.add(c, key) debug io.put_string(once "C++: ") @@ -1255,7 +1255,7 @@ io.put_string(once "%N? ") read_line if entry_buffer.is_empty then - Result := names.item(names.index_of(default_choice)) + Result := names.item(names.first_index_of(default_choice)) else from n := once " " @@ -3253,7 +3253,7 @@ do sysname := name if not system_tools.system_list.fast_has(sysname) then - i := system_tools.system_list.index_of(name) + i := system_tools.system_list.first_index_of(name) if system_tools.system_list.valid_index(i) then sysname := system_tools.system_list.item(i) else Modified: trunk/tools/commands/se.e =================================================================== --- trunk/tools/commands/se.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/tools/commands/se.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -48,7 +48,7 @@ if plugins.has(plugin) then call_plugin(plugin) elseif plugin_commands.has(plugin) then - call_plugin(plugins.item(plugin_commands.index_of(plugin))) + call_plugin(plugins.item(plugin_commands.first_index_of(plugin))) elseif is_version_flag_no_exit(plugin) then print_all_version_numbers elseif is_help_flag(plugin) then @@ -79,7 +79,7 @@ local i, status: INTEGER; cmd: STRING; arg: FAST_ARRAY[STRING] do - i := plugins.index_of(plugin) + i := plugins.first_index_of(plugin) cmd := plugin_commands.item(i) create arg.with_capacity(argument_count - 1) from Modified: trunk/tools/generation/code_printer.e =================================================================== --- trunk/tools/generation/code_printer.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/tools/generation/code_printer.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -113,7 +113,7 @@ end ctx := reserve_context(code) check - context_stack.fast_has(ctx) implies context_stack.fast_index_of(ctx) >= top + context_stack.fast_has(ctx) implies context_stack.fast_first_index_of(ctx) >= top end context_stack.put(ctx, top) ensure @@ -186,7 +186,7 @@ check_top (st: like stack_top): BOOLEAN is -- To make checks coherent, the stack must be cleaned do - Result := context_stack.fast_index_of(st) = top + Result := context_stack.fast_first_index_of(st) = top context_stack.put(Void, top) Result := Result and then not context_stack.fast_has(st) end Modified: trunk/tools/install/c_mode.e =================================================================== --- trunk/tools/install/c_mode.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/tools/install/c_mode.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -219,13 +219,13 @@ name.copy(a_name) - i := system_tools.compiler_list.index_of(a_c_compiler_type) + i := system_tools.compiler_list.first_index_of(a_c_compiler_type) c_compiler_type := system_tools.compiler_list.item(i) if a_cpp_compiler_type = fz_conf_undefined then cpp_compiler_type := Void else - i := system_tools.c_plus_plus_compiler_list.index_of(a_cpp_compiler_type) + i := system_tools.c_plus_plus_compiler_list.first_index_of(a_cpp_compiler_type) cpp_compiler_type := system_tools.c_plus_plus_compiler_list.item(i) end end @@ -267,7 +267,7 @@ cpp_same := False rc := c_file - c_compiler_type := system_tools.compiler_list.item(system_tools.compiler_list.index_of(rc.item(fz_conf_compiler_type))) + c_compiler_type := system_tools.compiler_list.item(system_tools.compiler_list.first_index_of(rc.item(fz_conf_compiler_type))) if rc.section_has(name, fz_conf_compiler_path) then tmp := rc.section_item(name, fz_conf_compiler_path) set_c_compiler_path(tmp) @@ -297,7 +297,7 @@ if rc = Void then cpp_compiler_type := Void else - cpp_compiler_type := system_tools.c_plus_plus_compiler_list.item(system_tools.c_plus_plus_compiler_list.index_of(rc.item(fz_conf_cpp_compiler_type))) + cpp_compiler_type := system_tools.c_plus_plus_compiler_list.item(system_tools.c_plus_plus_compiler_list.first_index_of(rc.item(fz_conf_cpp_compiler_type))) if rc.section_has(name, fz_conf_cpp_compiler_path) then tmp := rc.section_item(name, fz_conf_cpp_compiler_path) set_cpp_compiler_path(tmp) Modified: trunk/tools/kernel/helpers/agent_creation_helper.e =================================================================== --- trunk/tools/kernel/helpers/agent_creation_helper.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/tools/kernel/helpers/agent_creation_helper.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -721,7 +721,7 @@ cl /= Void expression /= Void do - last_rank := capture_list.index_of(expression) + last_rank := capture_list.first_index_of(expression) if capture_list.valid_index(last_rank) then status := Numbered_capture_status numbered_capture := Void Modified: trunk/tools/kernel/live_type.e =================================================================== --- trunk/tools/kernel/live_type.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/tools/kernel/live_type.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -2310,7 +2310,7 @@ local i: INTEGER do - i := actual_clients.fast_index_of(lt) + i := actual_clients.fast_first_index_of(lt) if i > actual_clients.upper then actual_clients.add_last(lt) end Modified: trunk/tools/kernel/pools/agent_pool.e =================================================================== --- trunk/tools/kernel/pools/agent_pool.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/tools/kernel/pools/agent_pool.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -298,7 +298,7 @@ if agent_creation_type.can_be_assigned_to(launcher_type) then mold_id.clear_count agent_creation.mold_id_in(type, mold_id) - idx := defined_agent_creation.index_of(mold_id) + idx := defined_agent_creation.first_index_of(mold_id) if defined_agent_creation.valid_index(idx) then buffer.append(once "case ") idx.append_in(buffer) Modified: trunk/tools/kernel/system_tools.e =================================================================== --- trunk/tools/kernel/system_tools.e 2005-12-20 10:50:47 UTC (rev 6721) +++ trunk/tools/kernel/system_tools.e 2005-12-20 14:46:40 UTC (rev 6722) @@ -409,7 +409,7 @@ local i: INTEGER do - i := system_list.index_of(system_name) + i := system_list.first_index_of(system_name) if i > system_list.upper then echo.w_put_string(once "Unknown system name in file%N%"") echo.w_put_string(tmp_file_read.path) @@ -479,7 +479,7 @@ error_handler.append("%S: config file corrupted!") From colnet at users.gforge.inria.fr Tue Dec 20 16:43:19 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 15:43:19 +0000 Subject: [Smarteiffel-commits] r6723 - in trunk/work/html/site/source Message-ID: <20051220_154319_060351. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-20 15:43:18 +0000 (Tue, 20 Dec 2005) New Revision: 6723 Modified: trunk/work/html/site/source/_index.html trunk/work/html/site/source/_menu_level1.html trunk/work/html/site/source/_menu_level2.html trunk/work/html/site/source/general/_download.html trunk/work/html/site/source/general/_whatsnew.html trunk/work/html/site/source/misc/_HISTORY.html Log: Updated the web site to take in account gforge.inria.fr. Modified: trunk/work/html/site/source/_index.html =================================================================== --- trunk/work/html/site/source/_index.html 2005-12-20 14:46:40 UTC (rev 6722) +++ trunk/work/html/site/source/_index.html 2005-12-20 15:43:18 UTC (rev 6723) @@ -17,7 +17,10 @@ the latest release available from our download page.
-Our Wiki is available since Wednesday July 6th 2005! +Together with the whole source code of SmartEiffel, the whole test suite of SmartEiffel +is now available at +gforge.inria.fr. +All development tools are now public too.

Modified: trunk/work/html/site/source/_menu_level1.html =================================================================== --- trunk/work/html/site/source/_menu_level1.html 2005-12-20 14:46:40 UTC (rev 6722) +++ trunk/work/html/site/source/_menu_level1.html 2005-12-20 15:43:18 UTC (rev 6723) @@ -42,6 +42,9 @@ ->Download + +->SCM Inria + ->People Modified: trunk/work/html/site/source/_menu_level2.html =================================================================== --- trunk/work/html/site/source/_menu_level2.html 2005-12-20 14:46:40 UTC (rev 6722) +++ trunk/work/html/site/source/_menu_level2.html 2005-12-20 15:43:18 UTC (rev 6723) @@ -43,6 +43,9 @@ ->Download + +->SCM Inria + ->People Modified: trunk/work/html/site/source/general/_download.html =================================================================== --- trunk/work/html/site/source/general/_download.html 2005-12-20 14:46:40 UTC (rev 6722) +++ trunk/work/html/site/source/general/_download.html 2005-12-20 15:43:18 UTC (rev 6723) @@ -67,58 +67,8 @@

- - - -
Snapshot Version -With Source Code Only
-

-This gives you access to the most bleeding-edge version of SmartEiffel. You can see how SmartEiffel evolves, -and more actively participate to its development. See the changelog of the snapshot. -

-

-

- - - - - -
HTTP access: download smarteiffel.tgz file -
-
-

- - - - - - - -
Source Controlled Repository
-

-Along to the snapshot you can also use our source controlled repository, based on git. -See the wiki for details. -
-Submitted patches should be sent according to this repository. -

-

-

- - - - - -
HTTP access: download smarteiffel.tgz file -
-
-

- - - -
Old SmartEiffel versions
@@ -183,6 +133,36 @@ that's not listed here, drop us a note.

+ + + + + +
Source Controlled Repository
+

+The SCM tool (Software Configuration Management tool) used by the SmartEiffel team +is hosted at gforge.inria.fr. +This gives you access to the most bleeding-edge version of SmartEiffel. +You can see how SmartEiffel evolves, and, for some of you, more +actively participate to its development. +

+ + + + + + + +
Snapshot Version +With Source Code Only
+

+Better than the old snapshot, just use directly the +SCM development +repository of the SmartEiffel team. +This gives you access to the most bleeding-edge version of SmartEiffel. +

+ +

[Line]
Copyright © The SmartEiffel Team - Modified: trunk/work/html/site/source/general/_whatsnew.html =================================================================== --- trunk/work/html/site/source/general/_whatsnew.html 2005-12-20 14:46:40 UTC (rev 6722) +++ trunk/work/html/site/source/general/_whatsnew.html 2005-12-20 15:43:18 UTC (rev 6723) @@ -21,6 +21,14 @@



+
20 December 2005:
+
Together with the whole source code of SmartEiffel, the whole test suite of SmartEiffel +is now available at +gforge.inria.fr. +All development tools are now public too. +
+
+
19 December 2005:
SmartEiffel release 2.2 is now available from our download page. Modified: trunk/work/html/site/source/misc/_HISTORY.html =================================================================== --- trunk/work/html/site/source/misc/_HISTORY.html 2005-12-20 14:46:40 UTC (rev 6722) +++ trunk/work/html/site/source/misc/_HISTORY.html 2005-12-20 15:43:18 UTC (rev 6723) @@ -7,7 +7,7 @@
  -Latest version first (31 stable releases since July 1995). +Latest version first (32 stable releases since July 1995).
 
  From colnet at users.gforge.inria.fr Tue Dec 20 16:45:14 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 15:45:14 +0000 Subject: [Smarteiffel-commits] r6724 - trunk/tutorial/cecil/example9 Message-ID: <20051220_154514_042280. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-20 15:45:13 +0000 (Tue, 20 Dec 2005) New Revision: 6724 Modified: trunk/tutorial/cecil/example9/eif_stuff.e Log: Missed one index_of -> fisrt_index_of. Modified: trunk/tutorial/cecil/example9/eif_stuff.e =================================================================== --- trunk/tutorial/cecil/example9/eif_stuff.e 2005-12-20 15:43:18 UTC (rev 6723) +++ trunk/tutorial/cecil/example9/eif_stuff.e 2005-12-20 15:45:13 UTC (rev 6724) @@ -23,7 +23,7 @@ local i: INTEGER do - i := adopted.fast_index_of(object) + i := adopted.fast_first_index_of(object) if adopted.valid_index(i) then adopted.put(Void, i) adopted.put(adopted.last, i) From colnet at users.gforge.inria.fr Tue Dec 20 17:20:38 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 16:20:38 +0000 Subject: [Smarteiffel-commits] r6725 - trunk/work/html/site/export/images Message-ID: <20051220_162038_056426. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-20 16:20:37 +0000 (Tue, 20 Dec 2005) New Revision: 6725 Modified: trunk/work/html/site/export/images/EiffelTowerManualPaint.jpg trunk/work/html/site/export/images/EiffelTowerMecano.jpg trunk/work/html/site/export/images/EiffelTowerMillau.jpg trunk/work/html/site/export/images/Yoda.png trunk/work/html/site/export/images/gnu-head.jpg Log: No more properties on images. (See svn propdel svn:keywords). Modified: trunk/work/html/site/export/images/EiffelTowerManualPaint.jpg =================================================================== --- trunk/work/html/site/export/images/EiffelTowerManualPaint.jpg 2005-12-20 15:45:13 UTC (rev 6724) +++ trunk/work/html/site/export/images/EiffelTowerManualPaint.jpg 2005-12-20 16:20:37 UTC (rev 6725) @@ -1,32 +1,13 @@ -JFIFddExifMM*C  !"$"$Co"2!1"AQ2aq#Br$!1A"2Qaq ? -C#D\=Gܿ8@ -xQ SFH.@^'NGYzʷw{P0(w? -}\kԀ#Gl{#ɝN3y0j|N49=si 4lyΈyҝIHh~ߦ JRTeƖ0+8ιkn+[l02T ˏ$8K\_PmVVs] -($34P< yy#kZx)-8s5N5 -o7M['.KGH,9<颻aVDoOVH'PP/DF?VCE>F,Jcf7-]+Rİ4SD#,VB8uč:յUȢ*d3Gp7<1dzL{F :Ϧ=:eL˗Q<{Q/1ǧ7wѪvp F01fLΗ#&g\c<{^  - qNS%MXҊH!k 2xhgCC@ -@G >\7" AOpCcAκW -OK#|*I\?M{ܭVjڹf` ~axݻf@V鍾U_TJb`}_5}gzNOQK4Y;j3sujJ_l-hsQZ 4z - -#D<di%{ N|1?ݪ!')ٞ>' kuKdOHܒ9,NÌIC@is$ ĕ\p2ug{%yE -T AmwS]%Ē}+ԴmrZsKO +JFIFddExifMM*C  !"$"$Co"2!1"AQ2aq#Br$!1A"2Qaq ? C#D\=Gܿ8@ xQ SFH.@^'NGYzʷw{P0(w? +}\kԀ#Gl{#ɝN3y0j|N49=si 4lyΈyҝIHh~ߦ JRTeƖ0+8ιkn+[l02T ˏ$8K\_PmVVs] ($34P< yy#kZx)-8s5N5 o7M['.KGH,9<颻aVDoOVH'PP/DF?VCE>F,Jcf7-]+Rİ4SD#,VB8uč:յUȢ*d3Gp7<1dzL{F :Ϧ=:eL˗Q<{Q/1ǧ7wѪvp F01fLΗ#&g\c<{^  qNS%MXҊH!k 2xhgCC@ @G >\7" AOpCcAκW OK#|*I\?M{ܭVjڹf` ~axݻf@V鍾U_TJb`}_5}gzNOQK4Y;j3sujJ_l-hsQZ 4z #D<di%{ N|1?ݪ!')ٞ>' kuKdOHܒ9,NÌIC@is$ ĕ\p2ug{%yE T AmwS]%Ē}+ԴmrZsKO >@̥XzGZ#{f"]*_rFa`p<ueii\(FQ M{#<ΪfbƈhH*wcYEjK,pH7Q |ffCQCKpwN}9mʸ¹leggs2:uމcc>u3+KmD -PtnA(V8g^8|:JZ:R2F;wՈ2>SȖWQSItMY$SVQ$6]q ~5}:kFPLb2$"Ҳ0BHgdl[炙1-r@9'GqHכR~ ңH֗/3:5+lΟ˫VV5* Tcw`A>_KE -=N֘#m,1gϒu}P zCsCPEܦ8?a 0<.-fR1ps8ΫY6vSݨVz)r~vԨ?kz:Q~ry -tU]$ -HEb-NҰw]J)#8 -AfPO'4N' -|`l$dǂzZe* s8z!wuBH8~~XO +PtnA(V8g^8|:JZ:R2F;wՈ2>SȖWQSItMY$SVQ$6]q ~5}:kFPLb2$"Ҳ0BHgdl[炙1-r@9'GqHכR~ ңH֗/3:5+lΟ˫VV5* Tcw`A>_KE =N֘#m,1gϒu}P zCsCPEܦ8?a 0<.-fR1ps8ΫY6vSݨVz)r~vԨ?kz:Q~ry tU]$ +HEb-NҰw]J)#8 AfPO'4N' -|`l$dǂzZe* s8z!wuBH8~~XO +~5Rstv @#jNX=Q P"13m|Je9NTΰڞĪpU}5jG,iQD*둜yN'J%>Y{Ȳ -f <jߦ[73C[-Wӄ6q8e<8 jGKs@=Xib†I=Y;6$x՟)/JJxet6w.>|jx5ڥi+Ռ(՞HݞSj y5[)MBiSҧPުv< ";9 G}Y(zrMUOpGH8r;Tnzpnj"H3_!N2 JJ -5Iq@;oQ'9qYfk3iVG[lktS%{Ҭ3pF9VΣ>]k?N+Rcoz$o%Ga#tT^WhޚE!xXnPr9ߠ*3 loO(0..wcڿƛtKz~ʝM5J,C,jma#•9$^YUbrU%ٝ$ 55c5-551XfZXIbbN샏Q[:=$w1B3HP$B*ֵǛKћTm5mKњWXXKFJJFKd8$^rE"Z$x₪5_h 8x#5m̨8ZvHDq툧q$kҎݶQ\'@"ʊL}{&ORuUVK;>EKu5`=GS=JLhb{hU@!;ITwkTӵPԴv@elu-xͿx1ፉ R>S*+bG}*&Ò-|x;uOZ8>RM^z~Y3$#y,0@ƮQ2Gs*jU0 Q?(f##휁+Ty*FvE` - >Nw.Uf4iYI)xweCm;H]'2zlY^ilQdp3w>w,sC08n6 >5[5[E$ѐc2 -چ+h[\穠M6jZI&! 8eXbi`1w!B1(,Ny`u?ycK -%X;E]DžacJ +K+8 +f <jߦ[73C[-Wӄ6q8e<8 jGKs@=Xib†I=Y;6$x՟)/JJxet6w.>|jx5ڥi+Ռ(՞HݞSj y5[)MBiSҧPުv< ";9 G}Y(zrMUOpGH8r;Tnzpnj"H3_!N2 JJ 5Iq@;oQ'9qYfk3iVG[lktS%{Ҭ3pF9VΣ>]k?N+Rcoz$o%Ga#tT^WhޚE!xXnPr9ߠ*3 loO(0..wcڿƛtKz~ʝM5J,C,jma#•9$^YUbrU%ٝ$ 55c5-551XfZXIbbN샏Q[:=$w1B3HP$B*ֵǛKћTm5mKњWXXKFJJFKd8$^rE"Z$x₪5_h 8x#5m̨8ZvHDq툧q$kҎݶQ\'@"ʊL}{&ORuUVK;>EKu5`=GS=JLhb{hU@!;ITwkTӵPԴv@elu-xͿx1ፉ R>S*+bG}*&Ò-|x;uOZ8>RM^z~Y3$#y,0@ƮQ2Gs*jU0 Q?(f##휁+Ty*FvE`  >Nw.Uf4iYI)xweCm;H]'2zlY^ilQdp3w>w,sC08n6 >5[5[E$ѐc2 +چ+h[\穠M6jZI&! 8eXbi`1w!B1(,Ny`u?ycK %X;E]DžacJ +K+8 =x3G5_)T&y41{,"({96˴0)ņO6Xf-:`X*ܒ0v59mݤZn̲:$n234 ڗE)#UBNd. 6sn*N6cj0^0$@G'#18;a?mʻ1P17ï,Δ5_n6ܾr_q4^R+=Ρգne0#TjW-8:jjש`Gs'h픖{mU:Y4dg=<'pPFKAVN30$IY}$+p~Rr}6rL*Ʊ68ڥ@ ƭ*jܑ6{Jjje$JAXc:鮊k֖n" 0O:4Qh.& J!g#,Ür5-5< -r-"7@Ou?]oZ`jB 8qdIGQ@1aN23$."_0"ROJ]H7 -"?PEݒzc@G*#]yCc:<i̖w*KUt)*RPOQ^Mr5TJ%5(s#e>0vIigH#'ǝxUZ(jx# Tk{.ֵ*L1HIQ7b#Hڬ>F|5G% Onݓԑɻ<${h-*7x|:oH}F*3ىY79s1$ϑnu=}Z@9"Pē`I$m$yzZ ޲NϰjRb(59/kBN_E7x#Խ +QRٜjšT賶 \ No newline at end of file +r-"7@Ou?]oZ`jB 8qdIGQ@1aN23$."_0"ROJ]H7 "?PEݒzc@G*#]yCc:<i̖w*KUt)*RPOQ^Mr5TJ%5(s#e>0vIigH#'ǝxUZ(jx# Tk{.ֵ*L1HIQ7b#Hڬ>F|5G% Onݓԑɻ<${h-*7x|:oH}F*3ىY79s1$ϑnu=}Z@9"Pē`I$m$yzZ ޲NϰjRb(59/kBN_E7x#Խ +QRٜjšT賶 \ No newline at end of file Property changes on: trunk/work/html/site/export/images/EiffelTowerManualPaint.jpg ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Modified: trunk/work/html/site/export/images/EiffelTowerMecano.jpg =================================================================== --- trunk/work/html/site/export/images/EiffelTowerMecano.jpg 2005-12-20 15:45:13 UTC (rev 6724) +++ trunk/work/html/site/export/images/EiffelTowerMecano.jpg 2005-12-20 16:20:37 UTC (rev 6725) @@ -1,19 +1,8 @@ JFIFExifMM*C  !"$"$C"5!1"AQa2Bq#Rr$!!1A"2Qa ?D at DDD at DZ潽j -gyA)[ێ}VQAU,JK(oT-PK=zW+ M<k#$q88WmGxqŧcFpp{WN6Q[D at DDD at DDD at DD[L\]ߌU~x_#6B -(9gEk]ޞ-ʋǡo- r}0 -U% -E{4FMQFh ZF $Ug퓟rUDEvxMH*EEkWve4S d} +gyA)[ێ}VQAU,JK(oT-PK=zW+ M<k#$q88WmGxqŧcFpp{WN6Q[D at DDD at DDD at DD[L\]ߌU~x_#6B (9gEk]ޞ-ʋǡo- r}0 +U% E{4FMQFh ZF $Ug퓟rUDEvxMH*EEkWve4S d} {ϥe:p'qp<>r9h[}Qv$1j&FN ?QA>P㝼p>A];-Ȉ""" """ """ (]vz#X@PddzN{.s|o -EK-F0'ӎ=hWWxUN}Se -K\#}WASIr49(DDD at DDD at DDD at ZRYN&ӱ녶Pk +EK-F0'ӎ=hWWxUN}Se K\#}WASIr49(DDD at DDD at DDD at ZRYN&ӱ녶Pk -˽,‚ڇ:2s.mp>wϯHʪӭ>K-}e[ _MXxvry=ph;%`qq} [9%XOtE_`Եfp`.vsL :V s9ԝ<]5 -lKSRiIxm$d7ڜ\b" """ """ ""쩍~h - urƌYYuO` -F]U?ROK^+l4L4; -,q~[m -?p\jm c^f͹~ѝarWE=]OiL2Aa9a9i9fS{}=ڭUb["xh|sD w#`Uil7;ZC:cѷەqSXdvhv8h=>aWH+ݻ<~;rnxOyꮞI)`|Ro:Jflqz˦S[d{sx¶ tDQh}E=5eM\/,IZn\ymhswZTb$$8wp<JK6GJ˓&dR| CI<>[ h$'hʛ[*Z"j NnhIcF{VwJ@Za7= g@o+KuK<d@&.{ pVƵ cCZfgm -sҺz}\m4w +˽,‚ڇ:2s.mp>wϯHʪӭ>K-}e[ _MXxvry=ph;%`qq} [9%XOtE_`Եfp`.vsL :V s9ԝ<]5 lKSRiIxm$d7ڜ\b" """ """ ""쩍~h urƌYYuO` F]U?ROK^+l4L4; ,q~[m ?p\jm c^f͹~ѝarWE=]OiL2Aa9a9i9fS{}=ڭUb["xh|sD w#`Uil7;ZC:cѷەqSXdvhv8h=>aWH+ݻ<~;rnxOyꮞI)`|Ro:Jflqz˦S[d{sx¶ tDQh}E=5eM\/,IZn\ymhswZTb$$8wp<JK6GJ˓&dR| CI<>[ h$'hʛ[*Z"j NnhIcF{VwJ@Za7= g@o+KuK<d@&.{ pVƵ cCZfgm sҺz}\m4w hpK37`Fx$E@ \ No newline at end of file Property changes on: trunk/work/html/site/export/images/EiffelTowerMecano.jpg ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Modified: trunk/work/html/site/export/images/EiffelTowerMillau.jpg =================================================================== --- trunk/work/html/site/export/images/EiffelTowerMillau.jpg 2005-12-20 15:45:13 UTC (rev 6724) +++ trunk/work/html/site/export/images/EiffelTowerMillau.jpg 2005-12-20 16:20:37 UTC (rev 6725) @@ -1,20 +1,10 @@ -JFIFHHExifII*1J2fizACD Systems Digital Imaging2003:07:29 22:22:130210570UR980100C  !"$"$C]"M  -!1AQ"aq#2B34Rt$&br%56CDSce!!A#1a"2 ?]ڜZҔ$( })Ƥۄ8gډ9~ZCmPy"Gy~wQ83dnTe=<9*iJөJ+z4'm thAkKs5uՁN -="D ڍ$JEQIQJhe%xSyBV5#s4FI[⩡JG*/D+)gl @y`iZ*IH>* ލ-S5.\yVd TP Hx)X$Щ9Q4 $%.%m!yIJAfj۲h ҅$`mW\1PwEWSVMHKRj_f{U#Z2Kyo3.j%؊JdHmEdyJSM7E:h'+Zj7~ťҮ)ReKZ!x<ЕE5ĤqRC83$Rx簾Ţ}kZXz4ۑ9-:n,c#R'AUMѦH1"l,0~@K*=?6W)\"߬^gGE)uf1XߡSu {eE$Z J7>(~_tspQ:gVx -Sa(~_tspQ:gVx SaR~me0|N˥N4P}EK)ZpvssүkՉpk7Y[9-iO>iVügДÞ>[:g&n[n~C% Rvl8\/Yy5"c$+H>)^4()kזQ4?]?z9ű$$t&fVTڛh%MJI R>5}Zss[`JQH j[#ƣMݧ We\U]R;>;]8o8o2[ҟq(ʰrI0S&ٿ!iK dglt*C %Gm^U -Τ-\VWF7ʆ*vm |F ?V[mucb at i <ظLDl09D2ƬmGx9$QWDvJZN;Ap|tN]@-Okvű`a@NDz)ĎCF -JX+VG]Կi*D};3_3t>HL ~1T͖&]94yNmU¼a"J=bGu+^N =g(L~V@s]1Ga2&A\lM2\)žG@ -ܒ>dwd#5Ġ~4Og8ܳ9N.HehPPBFBA#wt F -?Sr,'9!OdHzIԗ߯>꼩(*XVVЮr4EUjK at ECz\ fF RM<6 &v9mg:%=)L;^%8pr;#gL,8 [YIǢ;1S4 -6(1TUă=rQ߰jLQJc; -̢iр.fRSH%`}:h\@w?E-\7ºW0"4 -_IlcAte$umIn3m\AǭZx6)t#y++8{A^2zwYݧ@]́:>9ԭ>_=+{Jݙ($$0|IϰT} ]P< qs澇! wcZpٗ+?v#`ԅG'=rQ߰h$_ y̟?Ѧ%ݢ˳%K^QP6Dg|f+$W3 P[%G}Gv/[O+rH>]d2l2k*8,K=kCwKt㜋Ya --#Iʷӫ(U$;֭JBzq?ָ0j4t8-v}.1r҈ -*ᯣxT6nDd̿Ȑ^NQ$ t֟\;6d$tW -#푟)ٻ/''*숷Eyޤy sq,w!MԲ~B6)9o+Z k|)6bøES+ R.pBF}vV=[.u%x>6`Gռyg)] ZZ 2PV qJR.U+45hITcNN -u'jsA@ 44$I$djVԒ3BE}jmk# \ No newline at end of file +Τ-\VWF7ʆ*vm |F ?V[mucb at i <ظLDl09D2ƬmGx9$QWDvJZN;Ap|tN]@-Okvű`a@NDz)ĎCF JX+VG]Կi*D};3_3t>HL ~1T͖&]94yNmU¼a"J=bGu+^N =g(L~V@s]1Ga2&A\lM2\)žG@ +ܒ>dwd#5Ġ~4Og8ܳ9N.HehPPBFBA#wt F ?Sr,'9!OdHzIԗ߯>꼩(*XVVЮr4EUjK at ECz\ fF RM<6 &v9mg:%=)L;^%8pr;#gL,8 [YIǢ;1S4 +6(1TUă=rQ߰jLQJc; ̢iр.fRSH%`}:h\@w?E-\7ºW0"4 +_IlcAte$umIn3m\AǭZx6)t#y++8{A^2zwYݧ@]́:>9ԭ>_=+{Jݙ($$0|IϰT} ]P< qs澇! wcZpٗ+?v#`ԅG'=rQ߰h$_ y̟?Ѧ%ݢ˳%K^QP6Dg|f+$W3 P[%G}Gv/[O+rH>]d2l2k*8,K=kCwKt㜋Ya -#Iʷӫ(U$;֭JBzq?ָ0j4t8-v}.1r҈ *ᯣxT6nDd̿Ȑ^NQ$ t֟\;6d$tW +#푟)ٻ/''*숷Eyޤy sq,w!MԲ~B6)9o+Z k|)6bøES+ R.pBF}vV=[.u%x>6`Gռyg)] ZZ 2PV qJR.U+45hITcNN u'jsA@ 44$I$djVԒ3BE}jmk# \ No newline at end of file Property changes on: trunk/work/html/site/export/images/EiffelTowerMillau.jpg ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Modified: trunk/work/html/site/export/images/Yoda.png =================================================================== --- trunk/work/html/site/export/images/Yoda.png 2005-12-20 15:45:13 UTC (rev 6724) +++ trunk/work/html/site/export/images/Yoda.png 2005-12-20 16:20:37 UTC (rev 6725) @@ -1,361 +1,178 @@ -PNG +PNG  - -IHDRA>bKGD pHYs  #utIME13N IDATxԼwmYYyrvU;uhb$E ឃ*(+\ b EtݻjWay5cϾ ϳ\cQ;S{w_̷Gf2Y Pm4u'q} ``NYR)r^7/zIT'LikZ -UQen DZΏ#W׹pq~715 ;iP 09ϼY™+|S_`/unxt1@UdYu}\c{gI EaBXD":20,"jYbKGD pHYs  #utIME13N IDATxԼwmYYyrvU;uhb$E ឃ*(+\ b EtݻjWay5cϾ ϳ\cQ;S{w_̷Gf2Y Pm4u'q} ``NYR)r^7/zIT'LikZ UQen DZΏ#W׹pq~715 ;iP 09ϼY™+|S_`/unxt1@UdYu}\c{gI EaBXD":20,"jY,؎߳HĢ:>ONb3\FjȲ "200t[5@beyQ -H$cdfDk>v -Т1v8CRSS``N ~5sWƁ`!$o>|xg[7k!}gBeHt!X )`_W$Wx3*>rYxKN{L"*]䦧5cУ\!ϓgE\(iRqj}c@:XD@B*Uը!; +N<ި2<2;C,&J7?h$G|la A ! Z7dx=Vh}bKC zp:l`$tk\6UwۼĽϹϽOՎxt=qӃUڢpU]啯zsmwAJ,.]Ed>,؎߳HĢ:>ONb3\FjȲ "200t[5@beyQ +H$cdfDk>v Т1v8CRSS``N ~5sWƁ`!$o>|xg[7k!}gBeHt!X )`_W$Wx3*>rYxKN{L"*]䦧5cУ\!ϓgE\(iRqj}c@:XD@B*Uը!; (j րwv:uCqb^,\YP,PplӴ0>5 G)XC5FG1 Ӓ nODO ˲4 -D,F^%37xNjzw~5;?ypp7(5!,tI?< -ȨVa8^e~Ep - 'i.tmˑGYڢT/363n1].^8G@ERDH"'T)-d1&\ťT-1; <7t [eBb --/ãx-nN^W_L6x3X-.?q(f2ll:6QVD2DУ 죐FdjEMx -Jk%*N2Fɱ9EQ٭n%$D"tݾG25K^@DO$)+LMLDF#ضɥK+XQ{M{=shp<U#Ï|ِ!tO -C!BPX} ?0,OWGBom+4Mx;_S{f#Q_ۿX,GX[ESe 9p).S[;e8D$I&SF<~O&B#D$"avff@*ē:švL2$QSX.dI$Idc{q}dYY/XY[`v._p -xzo)Q +Cc>,\YP,PplӴ0>5 G)XC5FG1 Ӓ nODO ˲4 D,F^%37xNjzw~5;?ypp7(5!,tI?< +ȨVa8^e~Ep 'i.tmˑGYڢT/363n1].^8G@ERDH"'T)-d1&\ťT-1; <7t [eBb -/ãx-nN^W_L6x3X-.?q(f2ll:6QVD2DУ 죐FdjEMx Jk%*N2Fɱ9EQ٭n%$D"tݾG25K^@DO$)+LMLDF#ضɥK+XQ{M{=shp<U#Ï|ِ!tO C!BPX} ?0,OWGBom+4Mx;_S{f#Q_ۿX,GX[ESe 9p).S[;e8D$I&SF<~O&B#D$"avff@*ē:švL2$QSX.dI$Idc{q}dYY/XY[`v._p xzo)Q X!i Zzx;! O/ ׀W?|9㳡?eկ RHlsOJ\wy}T5z$,a&FEVEL"6Z4^ BqZAx.cuD|IF'h:HLLNM2'|V^8I3;{ht¥Kd2x^:7|#?MDžg3B.]%oxo{>ݢn($b0 -{wϓ ;oZ 80FMJwCg)sh)P -]6p|WܿG +.?uxOmt^_>^Ɨ$rg>yn( W8xtIJ >T pw/[F)$Y7h:##P$WsFH$ȠCbzf خ&LÍI" h"j eu -!2[[;45sȊO:ck{|bb'N_p?~ox%??P E8!-gx)2KBPR?Xruɞa|ܑ繇ᡓ'XZZBe.\=r 0<4L^o?0|!:O\H,P,"e#)20wq?`dd -۲*FGm(ccsEV2t"JS,tcskhTEiIP@%#ɒH$SNMenn/fddxlh`[?ql7O?qۏ]N?c%<x-:?o㙡y -w9X2D0`ˁ:}ai!&36o{8ynJu(B"^J?;,)4{fYY^Rc6'"KQz= ZY)T(a`<;Se{ {[J*6Tk%ʕt=(119 )t}́" kƠOգ From colnet at users.gforge.inria.fr Tue Dec 20 17:35:23 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 16:35:23 +0000 Subject: [Smarteiffel-commits] r6726 - in trunk Message-ID: <20051220_163523_036889. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-20 16:35:22 +0000 (Tue, 20 Dec 2005) New Revision: 6726 Added: trunk/wiki/ trunk/wiki/README.txt Log: To store the source files (i.e. PHP files) of our wiki. Added: trunk/wiki/README.txt =================================================================== --- trunk/wiki/README.txt 2005-12-20 16:20:37 UTC (rev 6725) +++ trunk/wiki/README.txt 2005-12-20 16:35:22 UTC (rev 6726) @@ -0,0 +1,4 @@ +This directory contains the PHP source files of the SmartEiffel Wiki. +This directory is _not_ part of a standard delivery. + + \ No newline at end of file From colnet at users.gforge.inria.fr Tue Dec 20 17:37:40 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 16:37:40 +0000 Subject: [Smarteiffel-commits] r6727 - trunk/work/tools Message-ID: <20051220_163740_051075. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-20 16:37:37 +0000 (Tue, 20 Dec 2005) New Revision: 6727 Modified: trunk/work/tools/NewBetaOrNewReleaseOfSmartEiffel Log: Keep in mind that SmartEiffel/wiki is not part of a delivery. Modified: trunk/work/tools/NewBetaOrNewReleaseOfSmartEiffel =================================================================== --- trunk/work/tools/NewBetaOrNewReleaseOfSmartEiffel 2005-12-20 16:35:22 UTC (rev 6726) +++ trunk/work/tools/NewBetaOrNewReleaseOfSmartEiffel 2005-12-20 16:37:37 UTC (rev 6727) @@ -11,9 +11,9 @@ else echo "Usage: NewBetaOrNewReleaseOfSmartEiffel " echo "Exemples:" - echo " NewBetaOrNewReleaseOfSmartEiffel 2-2" - echo " NewBetaOrNewReleaseOfSmartEiffel 2-2-beta5" - echo " NewBetaOrNewReleaseOfSmartEiffel 2-2-rc3" + echo " NewBetaOrNewReleaseOfSmartEiffel 2-3" + echo " NewBetaOrNewReleaseOfSmartEiffel 2-3-beta1" + echo " NewBetaOrNewReleaseOfSmartEiffel 2-3-rc1" exit 1 fi echo "Running \"SmartEiffel/work/tools/SmartClean\" first..." @@ -59,6 +59,10 @@ /bin/rm -rf SmartEiffel/work echo "." +echo -n "Removing \"SmartEiffel/wiki\"..." +/bin/rm -rf SmartEiffel/wiki +echo "." + echo -n "Removing \"SmartEiffel/bin\"..." /bin/rm -rf SmartEiffel/bin/* echo "Place for binaries" > SmartEiffel/bin/READ_ME.txt From colnet at users.gforge.inria.fr Tue Dec 20 18:10:31 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 17:10:31 +0000 Subject: [Smarteiffel-commits] r6728 - trunk/grand_book/images Message-ID: <20051220_171031_074583. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-20 17:10:30 +0000 (Tue, 20 Dec 2005) New Revision: 6728 Modified: trunk/grand_book/images/ExpandedVsReferenceBoolean.obj trunk/grand_book/images/ExpandedVsReferenceBooleanBis.obj trunk/grand_book/images/IsEqualPoints.obj trunk/grand_book/images/IsEqualTriangles.obj trunk/grand_book/images/MyVariableIsVoid.obj trunk/grand_book/images/SyntaxDiagramOf_Agent_creation.obj trunk/grand_book/images/SyntaxDiagramOf_Assertion.obj trunk/grand_book/images/SyntaxDiagramOf_Assignment.obj trunk/grand_book/images/SyntaxDiagramOf_Binary_operator.obj trunk/grand_book/images/SyntaxDiagramOf_Call.obj trunk/grand_book/images/SyntaxDiagramOf_Check.obj trunk/grand_book/images/SyntaxDiagramOf_Class_declaration.obj trunk/grand_book/images/SyntaxDiagramOf_Class_type.obj trunk/grand_book/images/SyntaxDiagramOf_Clients.obj trunk/grand_book/images/SyntaxDiagramOf_Comment.obj trunk/grand_book/images/SyntaxDiagramOf_Compound.obj trunk/grand_book/images/SyntaxDiagramOf_Create_expression.obj trunk/grand_book/images/SyntaxDiagramOf_Create_instruction.obj trunk/grand_book/images/SyntaxDiagramOf_Creation_clause.obj trunk/grand_book/images/SyntaxDiagramOf_Current.obj trunk/grand_book/images/SyntaxDiagramOf_Debug.obj trunk/grand_book/images/SyntaxDiagramOf_Entity_declaration_list.obj trunk/grand_book/images/SyntaxDiagramOf_Expression.obj trunk/grand_book/images/SyntaxDiagramOf_Feature_clause.obj trunk/grand_book/images/SyntaxDiagramOf_Feature_declaration.obj trunk/grand_book/images/SyntaxDiagramOf_Feature_name.obj trunk/grand_book/images/SyntaxDiagramOf_Formal_generic_list.obj trunk/grand_book/images/SyntaxDiagramOf_If_then_else.obj trunk/grand_book/images/SyntaxDiagramOf_Infix_operator.obj trunk/grand_book/images/SyntaxDiagramOf_Inspect.obj trunk/grand_book/images/SyntaxDiagramOf_Instruction.obj trunk/grand_book/images/SyntaxDiagramOf_Loop.obj trunk/grand_book/images/SyntaxDiagramOf_Manifest_string.obj trunk/grand_book/images/SyntaxDiagramOf_New_export_item.obj trunk/grand_book/images/SyntaxDiagramOf_Open_target_or_operand.obj trunk/grand_book/images/SyntaxDiagramOf_Parent_list.obj trunk/grand_book/images/SyntaxDiagramOf_Parent_type.obj trunk/grand_book/images/SyntaxDiagramOf_Precursor_call.obj trunk/grand_book/images/SyntaxDiagramOf_Prefix_operator.obj trunk/grand_book/images/SyntaxDiagramOf_Result.obj trunk/grand_book/images/SyntaxDiagramOf_Routine.obj trunk/grand_book/images/SyntaxDiagramOf_Routine_body.obj trunk/grand_book/images/SyntaxDiagramOf_Type.obj trunk/grand_book/images/SyntaxDiagramOf_Unary_operator.obj trunk/grand_book/images/SyntaxDiagramOf_Unqualified_call.obj trunk/grand_book/images/SyntaxDiagramOf_Void.obj Log: No more proplist on tgif *.obj files. Property changes on: trunk/grand_book/images/ExpandedVsReferenceBoolean.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/ExpandedVsReferenceBooleanBis.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/IsEqualPoints.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/IsEqualTriangles.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/MyVariableIsVoid.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Agent_creation.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Assertion.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Assignment.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Binary_operator.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Call.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Check.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Class_declaration.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Class_type.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Clients.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Comment.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Compound.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Create_expression.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Create_instruction.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Creation_clause.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Current.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Debug.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Entity_declaration_list.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Expression.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Feature_clause.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Feature_declaration.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Feature_name.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Formal_generic_list.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_If_then_else.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Infix_operator.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Inspect.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Instruction.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Loop.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Manifest_string.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_New_export_item.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Open_target_or_operand.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Parent_list.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Parent_type.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Precursor_call.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Prefix_operator.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Result.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Routine.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Routine_body.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Type.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Unary_operator.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Unqualified_call.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native Property changes on: trunk/grand_book/images/SyntaxDiagramOf_Void.obj ___________________________________________________________________ Name: svn:keywords - Author Date Id Revision Name: svn:eol-style - native From colnet at users.gforge.inria.fr Tue Dec 20 18:13:06 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 17:13:06 +0000 Subject: [Smarteiffel-commits] r6729 - trunk/work/tools Message-ID: <20051220_171306_059955. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-20 17:13:06 +0000 (Tue, 20 Dec 2005) New Revision: 6729 Modified: trunk/work/tools/NewBetaOrNewReleaseOfSmartEiffel Log: Replaced "CVS" with ".svn". Modified: trunk/work/tools/NewBetaOrNewReleaseOfSmartEiffel =================================================================== --- trunk/work/tools/NewBetaOrNewReleaseOfSmartEiffel 2005-12-20 17:10:30 UTC (rev 6728) +++ trunk/work/tools/NewBetaOrNewReleaseOfSmartEiffel 2005-12-20 17:13:06 UTC (rev 6729) @@ -68,8 +68,8 @@ echo "Place for binaries" > SmartEiffel/bin/READ_ME.txt echo "." -echo -n "Removing \"CVS\" directories..." -find SmartEiffel -name CVS | xargs /bin/rm -rf +echo -n "Removing \".svn\" directories..." +find SmartEiffel -name '.svn' | xargs /bin/rm -rf echo "." echo -n "Preparing \"SmartEiffel-${ReleaseTag}.tgz\"..." From zen at users.gforge.inria.fr Tue Dec 20 18:14:42 2005 From: zen at users.gforge.inria.fr (zen at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 17:14:42 +0000 Subject: [Smarteiffel-commits] r6730 - in trunk/wiki Message-ID: <20051220_171442_084034. zen@users.gforge.inria.fr> Author: zen Date: 2005-12-20 17:14:35 +0000 (Tue, 20 Dec 2005) New Revision: 6730 Added: trunk/wiki/GlobalSettings.php trunk/wiki/LocalSettings.php trunk/wiki/common/ trunk/wiki/common/.cvsignore trunk/wiki/common/AdminSettings.sample trunk/wiki/common/COPYING trunk/wiki/common/FAQ trunk/wiki/common/GlobalSettings.php trunk/wiki/common/HISTORY trunk/wiki/common/INSTALL trunk/wiki/common/README trunk/wiki/common/RELEASE-NOTES trunk/wiki/common/UPGRADE trunk/wiki/common/Version.php trunk/wiki/common/docs/ trunk/wiki/common/docs/deferred.doc trunk/wiki/common/docs/design.doc trunk/wiki/common/docs/globals.doc trunk/wiki/common/docs/hooks.doc trunk/wiki/common/docs/html/ trunk/wiki/common/docs/html/.cvsignore trunk/wiki/common/docs/html/README trunk/wiki/common/docs/language.doc trunk/wiki/common/docs/linkcache.doc trunk/wiki/common/docs/memcached.doc trunk/wiki/common/docs/php-memcached/ trunk/wiki/common/docs/php-memcached/ChangeLog trunk/wiki/common/docs/php-memcached/Documentation trunk/wiki/common/docs/schema.doc trunk/wiki/common/docs/skin.doc trunk/wiki/common/docs/title.doc trunk/wiki/common/docs/user.doc trunk/wiki/common/extensions/ trunk/wiki/common/extensions/README trunk/wiki/common/images/ trunk/wiki/common/images/.cvsignore trunk/wiki/common/images/0/ trunk/wiki/common/images/0/02/ trunk/wiki/common/images/0/02/SyntaxDiagramOf_Retry.obj trunk/wiki/common/images/0/03/ trunk/wiki/common/images/0/03/Se_mark_ceno.png trunk/wiki/common/images/0/05/ trunk/wiki/common/images/0/05/SyntaxDiagramOf_Binary_operator.png trunk/wiki/common/images/0/08/ trunk/wiki/common/images/0/08/Matriochka.jpeg trunk/wiki/common/images/0/0c/ trunk/wiki/common/images/0/0c/SyntaxDiagramOf_Class_declaration.obj trunk/wiki/common/images/0/0f/ trunk/wiki/common/images/0/0f/SyntaxDiagramOf_Create_expression.png trunk/wiki/common/images/1/ trunk/wiki/common/images/1/10/ trunk/wiki/common/images/1/10/SyntaxDiagramOf_Loop.obj trunk/wiki/common/images/1/10/SyntaxDiagramOf_Unqualified_call.png trunk/wiki/common/images/1/11/ trunk/wiki/common/images/1/11/ExpandedVsReferenceBooleanBis.obj trunk/wiki/common/images/1/11/Sm2.png trunk/wiki/common/images/1/14/ trunk/wiki/common/images/1/14/SyntaxDiagramOf_Class_type.obj trunk/wiki/common/images/1/18/ trunk/wiki/common/images/1/1d/ trunk/wiki/common/images/1/1d/0001.png trunk/wiki/common/images/1/1d/SyntaxDiagramOf_Parent_list.obj trunk/wiki/common/images/1/1f/ trunk/wiki/common/images/1/1f/SyntaxDiagramOf_Feature_declaration.png trunk/wiki/common/images/2/ trunk/wiki/common/images/2/22/ trunk/wiki/common/images/2/22/SyntaxDiagramOf_Agent_creation.obj trunk/wiki/common/images/2/28/ trunk/wiki/common/images/3/ trunk/wiki/common/images/3/31/ trunk/wiki/common/images/3/31/SyntaxDiagramOf_Expression.png trunk/wiki/common/images/3/35/ trunk/wiki/common/images/3/36/ trunk/wiki/common/images/3/36/SyntaxDiagramOf_Void.png trunk/wiki/common/images/3/3a/ trunk/wiki/common/images/3/3a/SyntaxDiagramOf_Create_instruction.png trunk/wiki/common/images/3/3a/SyntaxDiagramOf_Infix_operator.png trunk/wiki/common/images/3/3a/SyntaxDiagramOf_Retry.png trunk/wiki/common/images/3/3c/ trunk/wiki/common/images/3/3c/SyntaxDiagramOf_Loop.png trunk/wiki/common/images/3/3d/ trunk/wiki/common/images/3/3d/SyntaxDiagramOf_Assertion.png trunk/wiki/common/images/3/3d/SyntaxDiagramOf_Clients.png trunk/wiki/common/images/3/3d/Zorglogose.png trunk/wiki/common/images/4/ trunk/wiki/common/images/4/40/ trunk/wiki/common/images/4/40/SyntaxDiagramOf_Inspect.obj trunk/wiki/common/images/4/43/ trunk/wiki/common/images/4/43/Koalathumbnail.jpg trunk/wiki/common/images/4/44/ trunk/wiki/common/images/4/44/SyntaxDiagramOf_Feature_name.png trunk/wiki/common/images/4/46/ trunk/wiki/common/images/4/46/IsEqualTriangles.png trunk/wiki/common/images/5/ trunk/wiki/common/images/5/56/ trunk/wiki/common/images/5/56/SyntaxDiagramOf_Binary_operator.obj trunk/wiki/common/images/5/57/ trunk/wiki/common/images/5/5c/ trunk/wiki/common/images/5/5c/SyntaxDiagramOf_Call.obj trunk/wiki/common/images/5/5f/ trunk/wiki/common/images/5/5f/SyntaxDiagramOf_Inspect.png trunk/wiki/common/images/5/5f/SyntaxDiagramOf_Prefix_operator.obj trunk/wiki/common/images/6/ trunk/wiki/common/images/6/60/ trunk/wiki/common/images/6/60/SyntaxDiagramOf_Compound.obj trunk/wiki/common/images/6/60/SyntaxDiagramOf_Expression.obj trunk/wiki/common/images/6/64/ trunk/wiki/common/images/6/64/SyntaxDiagramOf_New_export_item.obj trunk/wiki/common/images/6/65/ trunk/wiki/common/images/6/65/SyntaxDiagramOf_Current.png trunk/wiki/common/images/6/66/ trunk/wiki/common/images/6/66/SyntaxDiagramOf_Call.png trunk/wiki/common/images/6/66/SyntaxDiagramOf_Clients.obj trunk/wiki/common/images/6/6c/ trunk/wiki/common/images/6/6c/MyVariableIsVoid.png trunk/wiki/common/images/6/6d/ trunk/wiki/common/images/6/6d/ExpandedVsReferenceBoolean.png trunk/wiki/common/images/6/6e/ trunk/wiki/common/images/6/6e/SyntaxDiagramOf_If_then_else.obj trunk/wiki/common/images/6/6f/ trunk/wiki/common/images/6/6f/SyntaxDiagramOf_Parent_type.obj trunk/wiki/common/images/7/ trunk/wiki/common/images/7/73/ trunk/wiki/common/images/7/73/SyntaxDiagramOf_Check.png trunk/wiki/common/images/7/76/ trunk/wiki/common/images/7/76/SyntaxDiagramOf_Agent_creation.png trunk/wiki/common/images/7/7a/ trunk/wiki/common/images/7/7a/Smart_beverages.png trunk/wiki/common/images/7/7a/SyntaxDiagramOf_Open_target_or_operand.obj trunk/wiki/common/images/7/7c/ trunk/wiki/common/images/7/7c/SyntaxDiagramOf_Infix_operator.obj trunk/wiki/common/images/7/7d/ trunk/wiki/common/images/7/7d/Smarteiffel.png trunk/wiki/common/images/7/7e/ trunk/wiki/common/images/7/7e/Dark-yoda.png trunk/wiki/common/images/7/7e/SyntaxDiagramOf_If_then_else.png trunk/wiki/common/images/8/ trunk/wiki/common/images/8/81/ trunk/wiki/common/images/8/81/SyntaxDiagramOf_Debug.obj trunk/wiki/common/images/8/82/ trunk/wiki/common/images/8/82/SyntaxDiagramOf_Class_declaration.png trunk/wiki/common/images/8/82/SyntaxDiagramOf_Create_expression.obj trunk/wiki/common/images/8/82/SyntaxDiagramOf_Parent_list.png trunk/wiki/common/images/8/83/ trunk/wiki/common/images/8/83/SyntaxDiagramOf_Instruction.png trunk/wiki/common/images/8/85/ trunk/wiki/common/images/8/85/SyntaxDiagramOf_Entity_declaration_list.obj trunk/wiki/common/images/8/87/ trunk/wiki/common/images/8/87/SyntaxDiagramOf_Void.obj trunk/wiki/common/images/8/89/ trunk/wiki/common/images/8/89/SyntaxDiagramOf_Routine_body.png trunk/wiki/common/images/9/ trunk/wiki/common/images/9/90/ trunk/wiki/common/images/9/90/SyntaxDiagramOf_Creation_clause.png trunk/wiki/common/images/9/93/ trunk/wiki/common/images/9/93/Smarteiffel-logo-transparent.png trunk/wiki/common/images/9/96/ trunk/wiki/common/images/9/96/ExpandedVsReferenceBooleanBis.png trunk/wiki/common/images/9/99/ trunk/wiki/common/images/9/99/SyntaxDiagramOf_Feature_clause.obj trunk/wiki/common/images/9/9b/ trunk/wiki/common/images/9/9b/SyntaxDiagramOf_Assertion.obj trunk/wiki/common/images/9/9c/ trunk/wiki/common/images/9/9c/IsEqualPoints.png trunk/wiki/common/images/9/9d/ trunk/wiki/common/images/9/9d/Gsmart.jpg trunk/wiki/common/images/9/9e/ trunk/wiki/common/images/9/9e/Smarteiffel-logo-be-smart.png trunk/wiki/common/images/README trunk/wiki/common/images/a/ trunk/wiki/common/images/a/a0/ trunk/wiki/common/images/a/a0/Satelite_puzzle_big.jpg trunk/wiki/common/images/a/a0/Smarteiffel-logo.png trunk/wiki/common/images/a/a2/ trunk/wiki/common/images/a/a2/SyntaxDiagramOf_Debug.png trunk/wiki/common/images/a/a5/ trunk/wiki/common/images/a/a5/SyntaxDiagramOf_New_export_item.png trunk/wiki/common/images/a/ac/ trunk/wiki/common/images/a/af/ trunk/wiki/common/images/a/af/SyntaxDiagramOf_Class_type.png trunk/wiki/common/images/a/af/SyntaxDiagramOf_Precursor_call.png trunk/wiki/common/images/archive/ trunk/wiki/common/images/archive/0/ trunk/wiki/common/images/archive/0/02/ trunk/wiki/common/images/archive/0/03/ trunk/wiki/common/images/archive/0/05/ trunk/wiki/common/images/archive/0/08/ trunk/wiki/common/images/archive/0/0c/ trunk/wiki/common/images/archive/0/0c/20050627154232!SyntaxDiagramOf_Class_declaration.obj trunk/wiki/common/images/archive/0/0c/20051214185537!SyntaxDiagramOf_Class_declaration.obj trunk/wiki/common/images/archive/0/0f/ trunk/wiki/common/images/archive/0/0f/20050627184032!SyntaxDiagramOf_Create_expression.png trunk/wiki/common/images/archive/1/ trunk/wiki/common/images/archive/1/10/ trunk/wiki/common/images/archive/1/10/20050625074724!SyntaxDiagramOf_Unqualified_call.png trunk/wiki/common/images/archive/1/10/20050713173255!SyntaxDiagramOf_Unqualified_call.png trunk/wiki/common/images/archive/1/10/20050715070853!SyntaxDiagramOf_Unqualified_call.png trunk/wiki/common/images/archive/1/11/ trunk/wiki/common/images/archive/1/11/20050909083432!ExpandedVsReferenceBooleanBis.obj trunk/wiki/common/images/archive/1/14/ trunk/wiki/common/images/archive/1/18/ trunk/wiki/common/images/archive/1/1d/ trunk/wiki/common/images/archive/1/1f/ trunk/wiki/common/images/archive/2/ trunk/wiki/common/images/archive/2/22/ trunk/wiki/common/images/archive/2/28/ trunk/wiki/common/images/archive/3/ trunk/wiki/common/images/archive/3/31/ trunk/wiki/common/images/archive/3/31/20050624172825!SyntaxDiagramOf_Expression.png trunk/wiki/common/images/archive/3/31/20050628151800!SyntaxDiagramOf_Expression.png trunk/wiki/common/images/archive/3/31/20050705081118!SyntaxDiagramOf_Expression.png trunk/wiki/common/images/archive/3/31/20050705095752!SyntaxDiagramOf_Expression.png trunk/wiki/common/images/archive/3/31/20050715070058!SyntaxDiagramOf_Expression.png trunk/wiki/common/images/archive/3/35/ trunk/wiki/common/images/archive/3/36/ trunk/wiki/common/images/archive/3/3a/ trunk/wiki/common/images/archive/3/3c/ trunk/wiki/common/images/archive/3/3d/ trunk/wiki/common/images/archive/4/ trunk/wiki/common/images/archive/4/40/ trunk/wiki/common/images/archive/4/40/20050627143701!SyntaxDiagramOf_Inspect.obj trunk/wiki/common/images/archive/4/43/ trunk/wiki/common/images/archive/4/44/ trunk/wiki/common/images/archive/4/46/ trunk/wiki/common/images/archive/4/46/20050616152542!IsEqualTriangles.png trunk/wiki/common/images/archive/4/46/20050616152653!IsEqualTriangles.png trunk/wiki/common/images/archive/4/46/20050616162729!IsEqualTriangles.png trunk/wiki/common/images/archive/5/ trunk/wiki/common/images/archive/5/56/ trunk/wiki/common/images/archive/5/57/ trunk/wiki/common/images/archive/5/5c/ trunk/wiki/common/images/archive/5/5c/20050715065644!SyntaxDiagramOf_Call.obj trunk/wiki/common/images/archive/5/5f/ trunk/wiki/common/images/archive/5/5f/20050627143730!SyntaxDiagramOf_Inspect.png trunk/wiki/common/images/archive/5/5f/20050922142446!SyntaxDiagramOf_Prefix_operator.obj trunk/wiki/common/images/archive/6/ trunk/wiki/common/images/archive/6/60/ trunk/wiki/common/images/archive/6/60/20050624172802!SyntaxDiagramOf_Expression.obj trunk/wiki/common/images/archive/6/60/20050628151731!SyntaxDiagramOf_Expression.obj trunk/wiki/common/images/archive/6/60/20050705081041!SyntaxDiagramOf_Expression.obj trunk/wiki/common/images/archive/6/60/20050705095717!SyntaxDiagramOf_Expression.obj trunk/wiki/common/images/archive/6/60/20050715070041!SyntaxDiagramOf_Expression.obj trunk/wiki/common/images/archive/6/64/ trunk/wiki/common/images/archive/6/64/20050715070623!SyntaxDiagramOf_New_export_item.obj trunk/wiki/common/images/archive/6/65/ trunk/wiki/common/images/archive/6/66/ trunk/wiki/common/images/archive/6/66/20050715065705!SyntaxDiagramOf_Call.png trunk/wiki/common/images/archive/6/6c/ trunk/wiki/common/images/archive/6/6c/20050617100509!MyVariableIsVoid.png trunk/wiki/common/images/archive/6/6d/ trunk/wiki/common/images/archive/6/6d/20050823135649!ExpandedVsReferenceBoolean.png trunk/wiki/common/images/archive/6/6d/20050909083414!ExpandedVsReferenceBoolean.png trunk/wiki/common/images/archive/6/6e/ trunk/wiki/common/images/archive/6/6f/ trunk/wiki/common/images/archive/7/ trunk/wiki/common/images/archive/7/73/ trunk/wiki/common/images/archive/7/76/ trunk/wiki/common/images/archive/7/7a/ trunk/wiki/common/images/archive/7/7c/ trunk/wiki/common/images/archive/7/7d/ trunk/wiki/common/images/archive/7/7e/ trunk/wiki/common/images/archive/7/7e/20050627172230!SyntaxDiagramOf_If_then_else.png trunk/wiki/common/images/archive/8/ trunk/wiki/common/images/archive/8/81/ trunk/wiki/common/images/archive/8/81/20050630070038!SyntaxDiagramOf_Debug.obj trunk/wiki/common/images/archive/8/82/ trunk/wiki/common/images/archive/8/82/20050623082718!SyntaxDiagramOf_Class_declaration.png trunk/wiki/common/images/archive/8/82/20050627154308!SyntaxDiagramOf_Class_declaration.png trunk/wiki/common/images/archive/8/82/20050627183955!SyntaxDiagramOf_Create_expression.obj trunk/wiki/common/images/archive/8/82/20051214185559!SyntaxDiagramOf_Class_declaration.png trunk/wiki/common/images/archive/8/83/ trunk/wiki/common/images/archive/8/83/20050624162810!SyntaxDiagramOf_Instruction.png trunk/wiki/common/images/archive/8/83/20050625093245!SyntaxDiagramOf_Instruction.png trunk/wiki/common/images/archive/8/83/20050627134752!SyntaxDiagramOf_Instruction.png trunk/wiki/common/images/archive/8/83/20050627134953!SyntaxDiagramOf_Instruction.png trunk/wiki/common/images/archive/8/83/20050627135500!SyntaxDiagramOf_Instruction.png trunk/wiki/common/images/archive/8/83/20050715070150!SyntaxDiagramOf_Instruction.png trunk/wiki/common/images/archive/8/83/20050715082927!SyntaxDiagramOf_Instruction.png trunk/wiki/common/images/archive/8/85/ trunk/wiki/common/images/archive/8/87/ trunk/wiki/common/images/archive/8/89/ trunk/wiki/common/images/archive/9/ trunk/wiki/common/images/archive/9/90/ trunk/wiki/common/images/archive/9/90/20050715065913!SyntaxDiagramOf_Creation_clause.png trunk/wiki/common/images/archive/9/93/ trunk/wiki/common/images/archive/9/96/ trunk/wiki/common/images/archive/9/96/20050909083452!ExpandedVsReferenceBooleanBis.png trunk/wiki/common/images/archive/9/99/ trunk/wiki/common/images/archive/9/9b/ trunk/wiki/common/images/archive/9/9c/ trunk/wiki/common/images/archive/9/9d/ trunk/wiki/common/images/archive/9/9e/ trunk/wiki/common/images/archive/a/ trunk/wiki/common/images/archive/a/a0/ trunk/wiki/common/images/archive/a/a2/ trunk/wiki/common/images/archive/a/a2/20050630070137!SyntaxDiagramOf_Debug.png trunk/wiki/common/images/archive/a/a5/ trunk/wiki/common/images/archive/a/a5/20050715070641!SyntaxDiagramOf_New_export_item.png trunk/wiki/common/images/archive/a/ac/ trunk/wiki/common/images/archive/a/af/ trunk/wiki/common/images/archive/b/ trunk/wiki/common/images/archive/b/b2/ trunk/wiki/common/images/archive/b/b4/ trunk/wiki/common/images/archive/b/b5/ trunk/wiki/common/images/archive/b/b7/ trunk/wiki/common/images/archive/b/b7/20050629140207!SyntaxDiagramOf_Type.png trunk/wiki/common/images/archive/b/b8/ trunk/wiki/common/images/archive/b/b8/20050823135632!ExpandedVsReferenceBoolean.obj trunk/wiki/common/images/archive/b/b8/20050909083332!ExpandedVsReferenceBoolean.obj trunk/wiki/common/images/archive/b/ba/ trunk/wiki/common/images/archive/b/ba/20050624162739!SyntaxDiagramOf_Instruction.obj trunk/wiki/common/images/archive/b/ba/20050625093214!SyntaxDiagramOf_Instruction.obj trunk/wiki/common/images/archive/b/ba/20050627134729!SyntaxDiagramOf_Instruction.obj trunk/wiki/common/images/archive/b/ba/20050627150906!SyntaxDiagramOf_Comment.png trunk/wiki/common/images/archive/b/ba/20050715070135!SyntaxDiagramOf_Instruction.obj trunk/wiki/common/images/archive/b/ba/20050715082908!SyntaxDiagramOf_Instruction.obj trunk/wiki/common/images/archive/b/bd/ trunk/wiki/common/images/archive/b/bd/20050715065857!SyntaxDiagramOf_Creation_clause.obj trunk/wiki/common/images/archive/b/bf/ trunk/wiki/common/images/archive/c/ trunk/wiki/common/images/archive/c/c1/ trunk/wiki/common/images/archive/c/c3/ trunk/wiki/common/images/archive/c/c3/20050627152442!SyntaxDiagramOf_Formal_generic_list.png trunk/wiki/common/images/archive/c/c4/ trunk/wiki/common/images/archive/c/c6/ trunk/wiki/common/images/archive/c/cc/ trunk/wiki/common/images/archive/d/ trunk/wiki/common/images/archive/d/d0/ trunk/wiki/common/images/archive/d/d0/20050627150833!SyntaxDiagramOf_Comment.obj trunk/wiki/common/images/archive/d/d1/ trunk/wiki/common/images/archive/d/d9/ trunk/wiki/common/images/archive/d/da/ trunk/wiki/common/images/archive/d/da/20050625074657!SyntaxDiagramOf_Unqualified_call.obj trunk/wiki/common/images/archive/d/da/20050713173237!SyntaxDiagramOf_Unqualified_call.obj trunk/wiki/common/images/archive/d/da/20050715070837!SyntaxDiagramOf_Unqualified_call.obj trunk/wiki/common/images/archive/d/dd/ trunk/wiki/common/images/archive/e/ trunk/wiki/common/images/archive/e/e1/ trunk/wiki/common/images/archive/e/e3/ trunk/wiki/common/images/archive/e/e3/20050629140137!SyntaxDiagramOf_Type.obj trunk/wiki/common/images/archive/e/e4/ trunk/wiki/common/images/archive/e/e6/ trunk/wiki/common/images/archive/e/eb/ trunk/wiki/common/images/archive/e/eb/20050627152411!SyntaxDiagramOf_Formal_generic_list.obj trunk/wiki/common/images/archive/f/ trunk/wiki/common/images/archive/f/f1/ trunk/wiki/common/images/archive/f/f3/ trunk/wiki/common/images/archive/f/f4/ trunk/wiki/common/images/archive/f/f7/ trunk/wiki/common/images/archive/f/f7/20050922142511!SyntaxDiagramOf_Prefix_operator.png trunk/wiki/common/images/archive/f/fc/ trunk/wiki/common/images/archive/f/fd/ trunk/wiki/common/images/b/ trunk/wiki/common/images/b/b2/ trunk/wiki/common/images/b/b2/SyntaxDiagramOf_Routine_body.obj trunk/wiki/common/images/b/b4/ trunk/wiki/common/images/b/b4/SyntaxDiagramOf_Create_instruction.obj trunk/wiki/common/images/b/b5/ trunk/wiki/common/images/b/b5/SyntaxDiagramOf_Current.obj trunk/wiki/common/images/b/b7/ trunk/wiki/common/images/b/b7/SE_Logo_2a.png trunk/wiki/common/images/b/b7/SyntaxDiagramOf_Type.png trunk/wiki/common/images/b/b7/SyntaxDiagramOf_Unary_operator.png trunk/wiki/common/images/b/b8/ trunk/wiki/common/images/b/b8/ExpandedVsReferenceBoolean.obj trunk/wiki/common/images/b/ba/ trunk/wiki/common/images/b/ba/SyntaxDiagramOf_Comment.png trunk/wiki/common/images/b/ba/SyntaxDiagramOf_Instruction.obj trunk/wiki/common/images/b/bd/ trunk/wiki/common/images/b/bd/SE_Logo_3a.png trunk/wiki/common/images/b/bd/SyntaxDiagramOf_Assignment.obj trunk/wiki/common/images/b/bd/SyntaxDiagramOf_Creation_clause.obj trunk/wiki/common/images/b/bd/SyntaxDiagramOf_Manifest_string.obj trunk/wiki/common/images/b/bf/ trunk/wiki/common/images/b/bf/SyntaxDiagramOf_Unary_operator.obj trunk/wiki/common/images/c/ trunk/wiki/common/images/c/c1/ trunk/wiki/common/images/c/c1/SyntaxDiagramOf_Routine.png trunk/wiki/common/images/c/c3/ trunk/wiki/common/images/c/c3/SyntaxDiagramOf_Formal_generic_list.png trunk/wiki/common/images/c/c4/ trunk/wiki/common/images/c/c4/SyntaxDiagramOf_Feature_name.obj trunk/wiki/common/images/c/c6/ trunk/wiki/common/images/c/c6/SyntaxDiagramOf_Compound.png trunk/wiki/common/images/c/cc/ trunk/wiki/common/images/c/cc/SyntaxDiagramOf_Manifest_string.png trunk/wiki/common/images/d/ trunk/wiki/common/images/d/d0/ trunk/wiki/common/images/d/d0/SyntaxDiagramOf_Comment.obj trunk/wiki/common/images/d/d1/ trunk/wiki/common/images/d/d1/SyntaxDiagramOf_Precursor_call.obj trunk/wiki/common/images/d/d9/ trunk/wiki/common/images/d/d9/Se001.jpg trunk/wiki/common/images/d/da/ trunk/wiki/common/images/d/da/SyntaxDiagramOf_Unqualified_call.obj trunk/wiki/common/images/d/dd/ trunk/wiki/common/images/e/ trunk/wiki/common/images/e/e1/ trunk/wiki/common/images/e/e1/SyntaxDiagramOf_Result.obj trunk/wiki/common/images/e/e3/ trunk/wiki/common/images/e/e3/SyntaxDiagramOf_Type.obj trunk/wiki/common/images/e/e4/ trunk/wiki/common/images/e/e4/SyntaxDiagramOf_Parent_type.png trunk/wiki/common/images/e/e4/SyntaxDiagramOf_Routine.obj trunk/wiki/common/images/e/e6/ trunk/wiki/common/images/e/e6/SyntaxDiagramOf_Entity_declaration_list.png trunk/wiki/common/images/e/eb/ trunk/wiki/common/images/e/eb/SyntaxDiagramOf_Check.obj trunk/wiki/common/images/e/eb/SyntaxDiagramOf_Formal_generic_list.obj trunk/wiki/common/images/f/ trunk/wiki/common/images/f/f1/ trunk/wiki/common/images/f/f1/SyntaxDiagramOf_Feature_clause.png trunk/wiki/common/images/f/f3/ trunk/wiki/common/images/f/f3/SyntaxDiagramOf_Open_target_or_operand.png trunk/wiki/common/images/f/f4/ trunk/wiki/common/images/f/f4/SyntaxDiagramOf_Assignment.png trunk/wiki/common/images/f/f4/SyntaxDiagramOf_Result.png trunk/wiki/common/images/f/f7/ trunk/wiki/common/images/f/f7/SyntaxDiagramOf_Prefix_operator.png trunk/wiki/common/images/f/fc/ trunk/wiki/common/images/f/fc/SE_Logo_1a.png trunk/wiki/common/images/f/fd/ trunk/wiki/common/images/f/fd/SyntaxDiagramOf_Feature_declaration.obj trunk/wiki/common/images/temp/ trunk/wiki/common/images/temp/0/ trunk/wiki/common/images/temp/0/0c/ trunk/wiki/common/images/temp/0/0f/ trunk/wiki/common/images/temp/1/ trunk/wiki/common/images/temp/1/10/ trunk/wiki/common/images/temp/1/11/ trunk/wiki/common/images/temp/3/ trunk/wiki/common/images/temp/3/31/ trunk/wiki/common/images/temp/3/36/ trunk/wiki/common/images/temp/4/ trunk/wiki/common/images/temp/4/40/ trunk/wiki/common/images/temp/4/46/ trunk/wiki/common/images/temp/5/ trunk/wiki/common/images/temp/5/5c/ trunk/wiki/common/images/temp/5/5f/ trunk/wiki/common/images/temp/6/ trunk/wiki/common/images/temp/6/60/ trunk/wiki/common/images/temp/6/64/ trunk/wiki/common/images/temp/6/66/ trunk/wiki/common/images/temp/6/6d/ trunk/wiki/common/images/temp/7/ trunk/wiki/common/images/temp/7/7e/ trunk/wiki/common/images/temp/8/ trunk/wiki/common/images/temp/8/81/ trunk/wiki/common/images/temp/8/82/ trunk/wiki/common/images/temp/8/83/ trunk/wiki/common/images/temp/9/ trunk/wiki/common/images/temp/9/90/ trunk/wiki/common/images/temp/9/96/ trunk/wiki/common/images/temp/a/ trunk/wiki/common/images/temp/a/a0/ trunk/wiki/common/images/temp/a/a2/ trunk/wiki/common/images/temp/a/a5/ trunk/wiki/common/images/temp/b/ trunk/wiki/common/images/temp/b/b7/ trunk/wiki/common/images/temp/b/b8/ trunk/wiki/common/images/temp/b/ba/ trunk/wiki/common/images/temp/b/ba/20050623173813!SyntaxDiagramOf_Instruction.obj trunk/wiki/common/images/temp/b/bd/ trunk/wiki/common/images/temp/c/ trunk/wiki/common/images/temp/c/c3/ trunk/wiki/common/images/temp/d/ trunk/wiki/common/images/temp/d/d0/ trunk/wiki/common/images/temp/d/da/ trunk/wiki/common/images/temp/e/ trunk/wiki/common/images/temp/e/e3/ trunk/wiki/common/images/temp/e/eb/ trunk/wiki/common/images/temp/f/ trunk/wiki/common/images/temp/f/fc/ trunk/wiki/common/images/thumb/ trunk/wiki/common/images/thumb/0/ trunk/wiki/common/images/thumb/0/01/ trunk/wiki/common/images/thumb/0/02/ trunk/wiki/common/images/thumb/0/02/87px-EiffelSyntaxPage2.png trunk/wiki/common/images/thumb/0/05/ trunk/wiki/common/images/thumb/0/05/800px-SyntaxDiagramOf_Inspect.png trunk/wiki/common/images/thumb/0/06/ trunk/wiki/common/images/thumb/0/06/800px-SyntaxDiagramOf_Check.png trunk/wiki/common/images/thumb/0/08/ trunk/wiki/common/images/thumb/0/09/ trunk/wiki/common/images/thumb/0/09/647px-EiffelSyntaxPage1.png trunk/wiki/common/images/thumb/0/0b/ trunk/wiki/common/images/thumb/0/0c/ trunk/wiki/common/images/thumb/0/0c/663px-IsEqualTriangles.png trunk/wiki/common/images/thumb/0/0e/ trunk/wiki/common/images/thumb/0/0f/ trunk/wiki/common/images/thumb/0/0f/800px-IsEqualTriangles2.png trunk/wiki/common/images/thumb/1/ trunk/wiki/common/images/thumb/1/10/ trunk/wiki/common/images/thumb/1/11/ trunk/wiki/common/images/thumb/1/11/800px-SyntaxDiagramOf_Clients.png trunk/wiki/common/images/thumb/1/12/ trunk/wiki/common/images/thumb/1/13/ trunk/wiki/common/images/thumb/1/13/770px-SyntaxDiagramOf_Class_declaration.png trunk/wiki/common/images/thumb/1/15/ trunk/wiki/common/images/thumb/1/15/800px-SyntaxDiagramOf_Debug.png trunk/wiki/common/images/thumb/1/16/ trunk/wiki/common/images/thumb/1/17/ trunk/wiki/common/images/thumb/1/1a/ trunk/wiki/common/images/thumb/1/1a/551px-SyntaxDiagramOf_Class_declaration.png trunk/wiki/common/images/thumb/1/1c/ trunk/wiki/common/images/thumb/1/1d/ trunk/wiki/common/images/thumb/1/1e/ trunk/wiki/common/images/thumb/1/1e/800px-SyntaxDiagramOf_Assignment.png trunk/wiki/common/images/thumb/2/ trunk/wiki/common/images/thumb/2/20/ trunk/wiki/common/images/thumb/2/23/ trunk/wiki/common/images/thumb/2/24/ trunk/wiki/common/images/thumb/2/24/439px-EiffelSyntaxPage2.png trunk/wiki/common/images/thumb/2/2a/ trunk/wiki/common/images/thumb/2/2a/800px-SyntaxDiagramOf_Retry.png trunk/wiki/common/images/thumb/2/2f/ trunk/wiki/common/images/thumb/3/ trunk/wiki/common/images/thumb/3/31/ trunk/wiki/common/images/thumb/3/31/800px-SyntaxDiagramOf_Feature_name.png trunk/wiki/common/images/thumb/3/32/ trunk/wiki/common/images/thumb/3/32/800px-SyntaxDiagramOf_Unary.png trunk/wiki/common/images/thumb/3/38/ trunk/wiki/common/images/thumb/3/3c/ trunk/wiki/common/images/thumb/3/3d/ trunk/wiki/common/images/thumb/3/3e/ trunk/wiki/common/images/thumb/3/3e/120px-IsEqualPoints.png trunk/wiki/common/images/thumb/3/3e/800px-SyntaxDiagramOf_Open_target_or_operand.png trunk/wiki/common/images/thumb/3/3e/800px-SyntaxDiagramOf_Result.png trunk/wiki/common/images/thumb/3/3f/ trunk/wiki/common/images/thumb/3/3f/800px-SyntaxDiagramOf_Assertion.png trunk/wiki/common/images/thumb/4/ trunk/wiki/common/images/thumb/4/42/ trunk/wiki/common/images/thumb/4/42/309px-SyntaxDiagramOf_Class_declaration.png trunk/wiki/common/images/thumb/4/43/ trunk/wiki/common/images/thumb/4/44/ trunk/wiki/common/images/thumb/4/45/ trunk/wiki/common/images/thumb/4/45/92px-EiffelSyntaxPage4.png trunk/wiki/common/images/thumb/4/46/ trunk/wiki/common/images/thumb/4/4b/ trunk/wiki/common/images/thumb/4/4b/800px-SyntaxDiagramOf_Loop.png trunk/wiki/common/images/thumb/4/4b/800px-SyntaxDiagramOf_Manifest_string.png trunk/wiki/common/images/thumb/5/ trunk/wiki/common/images/thumb/5/52/ trunk/wiki/common/images/thumb/5/54/ trunk/wiki/common/images/thumb/5/54/800px-SyntaxDiagramOf_Void.png trunk/wiki/common/images/thumb/5/57/ trunk/wiki/common/images/thumb/5/5b/ trunk/wiki/common/images/thumb/5/5b/120px-EiffelSyntaxPage1.png trunk/wiki/common/images/thumb/5/5c/ trunk/wiki/common/images/thumb/5/5d/ trunk/wiki/common/images/thumb/5/5e/ trunk/wiki/common/images/thumb/5/5f/ trunk/wiki/common/images/thumb/6/ trunk/wiki/common/images/thumb/6/61/ trunk/wiki/common/images/thumb/6/64/ trunk/wiki/common/images/thumb/6/66/ trunk/wiki/common/images/thumb/6/66/800px-IsEqualPoints.png trunk/wiki/common/images/thumb/6/67/ trunk/wiki/common/images/thumb/6/67/800px-SyntaxDiagramOf_Create_expression.png trunk/wiki/common/images/thumb/6/69/ trunk/wiki/common/images/thumb/6/6b/ trunk/wiki/common/images/thumb/6/6f/ trunk/wiki/common/images/thumb/7/ trunk/wiki/common/images/thumb/7/73/ trunk/wiki/common/images/thumb/7/73/120px-MyVariableIsVoid.png trunk/wiki/common/images/thumb/7/73/800px-SyntaxDiagramOf_Type.png trunk/wiki/common/images/thumb/7/76/ trunk/wiki/common/images/thumb/7/76/621px-SyntaxDiagramOf_Instruction.png trunk/wiki/common/images/thumb/7/76/800px-SyntaxDiagramOf_If_then_else.png trunk/wiki/common/images/thumb/7/78/ trunk/wiki/common/images/thumb/7/78/800px-SyntaxDiagramOf_Unqualified_call.png trunk/wiki/common/images/thumb/7/79/ trunk/wiki/common/images/thumb/7/7d/ trunk/wiki/common/images/thumb/8/ trunk/wiki/common/images/thumb/8/81/ trunk/wiki/common/images/thumb/8/82/ trunk/wiki/common/images/thumb/8/84/ trunk/wiki/common/images/thumb/8/84/800px-SyntaxDiagramOf_Unary_operator.png trunk/wiki/common/images/thumb/8/85/ trunk/wiki/common/images/thumb/8/86/ trunk/wiki/common/images/thumb/8/86/800px-SyntaxDiagramOf_When_part.png trunk/wiki/common/images/thumb/8/87/ trunk/wiki/common/images/thumb/8/8b/ trunk/wiki/common/images/thumb/8/8d/ trunk/wiki/common/images/thumb/9/ trunk/wiki/common/images/thumb/9/90/ trunk/wiki/common/images/thumb/9/91/ trunk/wiki/common/images/thumb/9/92/ trunk/wiki/common/images/thumb/9/92/462px-EiffelSyntaxPage4.png trunk/wiki/common/images/thumb/9/92/800px-SyntaxDiagramOf_Binary.png trunk/wiki/common/images/thumb/9/94/ trunk/wiki/common/images/thumb/9/94/800px-SyntaxDiagramOf_Formal_generic_list.png trunk/wiki/common/images/thumb/9/95/ trunk/wiki/common/images/thumb/9/95/800px-SyntaxDiagramOf_Comment.png trunk/wiki/common/images/thumb/9/96/ trunk/wiki/common/images/thumb/9/96/800px-SyntaxDiagramOf_Agent_creation.png From zen at users.gforge.inria.fr Tue Dec 20 22:45:54 2005 From: zen at users.gforge.inria.fr (zen at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 21:45:54 +0000 Subject: [Smarteiffel-commits] r6731 - in trunk/lib/storage Message-ID: <20051220_214554_055020. zen@users.gforge.inria.fr> Author: zen Date: 2005-12-20 21:45:53 +0000 (Tue, 20 Dec 2005) New Revision: 6731 Modified: trunk/lib/storage/collection.e trunk/lib/storage/collection/array.e trunk/lib/storage/collection/fast_array.e trunk/lib/storage/collection/linked_list.e trunk/lib/storage/collection/ring_array.e trunk/lib/storage/collection/two_way_linked_list.e Log: from_collection actually only needs its arguments to be traversable. from_traversable would maybe be a better name but that's life. Modified: trunk/lib/storage/collection/array.e =================================================================== --- trunk/lib/storage/collection/array.e 2005-12-20 17:14:35 UTC (rev 6730) +++ trunk/lib/storage/collection/array.e 2005-12-20 21:45:53 UTC (rev 6731) @@ -277,7 +277,7 @@ put(element, upper) end - from_collection (model: COLLECTION[like item]) is + from_collection (model: TRAVERSABLE[like item]) is local i, up: INTEGER do Modified: trunk/lib/storage/collection/fast_array.e =================================================================== --- trunk/lib/storage/collection/fast_array.e 2005-12-20 17:14:35 UTC (rev 6730) +++ trunk/lib/storage/collection/fast_array.e 2005-12-20 21:45:53 UTC (rev 6731) @@ -187,7 +187,7 @@ storage.set_all_with(v, upper) end - from_collection (model: COLLECTION[like item]) is + from_collection (model: TRAVERSABLE[like item]) is local i1, i2, up: INTEGER do Modified: trunk/lib/storage/collection/linked_list.e =================================================================== --- trunk/lib/storage/collection/linked_list.e 2005-12-20 17:14:35 UTC (rev 6730) +++ trunk/lib/storage/collection/linked_list.e 2005-12-20 21:45:53 UTC (rev 6731) @@ -334,7 +334,7 @@ upper = 0 end - from_collection (model: COLLECTION[like item]) is + from_collection (model: TRAVERSABLE[like item]) is local i, up: INTEGER do Modified: trunk/lib/storage/collection/ring_array.e =================================================================== --- trunk/lib/storage/collection/ring_array.e 2005-12-20 17:14:35 UTC (rev 6730) +++ trunk/lib/storage/collection/ring_array.e 2005-12-20 21:45:53 UTC (rev 6731) @@ -322,7 +322,7 @@ put(element, upper) end - from_collection (model: COLLECTION[like item]) is + from_collection (model: TRAVERSABLE[like item]) is local i, up: INTEGER do Modified: trunk/lib/storage/collection/two_way_linked_list.e =================================================================== --- trunk/lib/storage/collection/two_way_linked_list.e 2005-12-20 17:14:35 UTC (rev 6730) +++ trunk/lib/storage/collection/two_way_linked_list.e 2005-12-20 21:45:53 UTC (rev 6731) @@ -329,7 +329,7 @@ upper = 0 end - from_collection (model: COLLECTION[like item]) is + from_collection (model: TRAVERSABLE[like item]) is local i, up: INTEGER do Modified: trunk/lib/storage/collection.e =================================================================== --- trunk/lib/storage/collection.e 2005-12-20 17:14:35 UTC (rev 6730) +++ trunk/lib/storage/collection.e 2005-12-20 21:45:53 UTC (rev 6731) @@ -207,7 +207,7 @@ deferred end - from_collection (model: COLLECTION[like item]) is + from_collection (model: TRAVERSABLE[like item]) is -- Initialize the current object with the contents of `model'. require model /= Void From zen at users.gforge.inria.fr Tue Dec 20 22:55:32 2005 From: zen at users.gforge.inria.fr (zen at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 21:55:32 +0000 Subject: [Smarteiffel-commits] r6732 - trunk/lib/storage/collection Message-ID: <20051220_215532_084902. zen@users.gforge.inria.fr> Author: zen Date: 2005-12-20 21:55:31 +0000 (Tue, 20 Dec 2005) New Revision: 6732 Added: trunk/lib/storage/collection/dictionary_key_traverser.e Log: Allows to view a DICTIONARY[V, K] to be viewed as a TRAVERSABLE[K] Added: trunk/lib/storage/collection/dictionary_key_traverser.e =================================================================== --- trunk/lib/storage/collection/dictionary_key_traverser.e 2005-12-20 21:45:53 UTC (rev 6731) +++ trunk/lib/storage/collection/dictionary_key_traverser.e 2005-12-20 21:55:31 UTC (rev 6732) @@ -0,0 +1,93 @@ +-- See the Copyright notice at the end of this file. +-- +class DICTIONARY_KEY_TRAVERSER[V_, K_] + -- This class allows you to view a DICTIONARY[V_, K_] as a TRAVERSABLE[K_]. Note that there is no need for + -- a DICTIONARY_ITEM_TRAVERSER because DICTIONARY[V_, K_] is already a TRAVERSABLE[V_]. + +inherit + TRAVERSABLE[K_] + +creation {ANY} + from_dictionary + +feature {ANY} + from_dictionary (dictionary_: like dictionary) is + do + dictionary := dictionary_ + end + +feature {ANY} + lower: INTEGER is + do + Result := dictionary.lower + end + + upper: INTEGER is + do + Result := dictionary.upper + end + +feature {ANY} + count: INTEGER is + do + Result := dictionary.count + end + + is_empty: BOOLEAN is + do + Result := dictionary.is_empty + end + +feature {ANY} + item (i: INTEGER): K_ is + do + Result := dictionary.key(i) + end + + first: like item is + do + Result := item(lower) + end + + last: like item is + do + Result := item(upper) + end + +feature {ANY} + get_new_iterator: ITERATOR[K_] is + do + Result := dictionary.get_new_iterator_on_keys + end + +feature {} + dictionary: DICTIONARY[K_, V_] + +end -- class DICTIONARY_KEY_TRAVERSER +-- +-- ------------------------------------------------------------------------------------------------------------ +-- Copyright notice below. Please read. +-- +-- This file is part of the SmartEiffel standard library. +-- Copyright(C) 1994-2002: INRIA - LORIA (INRIA Lorraine) - ESIAL U.H.P. - University of Nancy 1 - FRANCE +-- Copyright(C) 2003-2006: INRIA - LORIA (INRIA Lorraine) - I.U.T. Charlemagne - University of Nancy 2 - FRANCE +-- +-- Authors: Dominique COLNET, Philippe RIBET, Cyril ADRIAN, Vincent CROIZIER, Frederic MERIZEN +-- +-- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated +-- documentation files (the "Software"), to deal in the Software without restriction, including without +-- limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +-- the Software, and to permit persons to whom the Software is furnished to do so, subject to the following +-- conditions: +-- +-- The above copyright notice and this permission notice shall be included in all copies or substantial +-- portions of the Software. +-- +-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT +-- LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO +-- EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +-- AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +-- OR OTHER DEALINGS IN THE SOFTWARE. +-- +-- http://SmartEiffel.loria.fr - SmartEiffel at loria.fr +-- ------------------------------------------------------------------------------------------------------------ From zen at users.gforge.inria.fr Tue Dec 20 23:14:36 2005 From: zen at users.gforge.inria.fr (zen at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 22:14:36 +0000 Subject: [Smarteiffel-commits] r6733 - trunk/lib/storage/collection Message-ID: <20051220_221436_013360. zen@users.gforge.inria.fr> Author: zen Date: 2005-12-20 22:14:35 +0000 (Tue, 20 Dec 2005) New Revision: 6733 Modified: trunk/lib/storage/collection/dictionary_key_traverser.e Log: Typo Modified: trunk/lib/storage/collection/dictionary_key_traverser.e =================================================================== --- trunk/lib/storage/collection/dictionary_key_traverser.e 2005-12-20 21:55:31 UTC (rev 6732) +++ trunk/lib/storage/collection/dictionary_key_traverser.e 2005-12-20 22:14:35 UTC (rev 6733) @@ -61,7 +61,7 @@ end feature {} - dictionary: DICTIONARY[K_, V_] + dictionary: DICTIONARY[V_, K_] end -- class DICTIONARY_KEY_TRAVERSER -- From p.ribet at worldonline.fr Tue Dec 20 23:19:07 2005 From: p.ribet at worldonline.fr (Philippe Ribet) Date: Tue, 20 Dec 2005 23:19:07 +0100 Subject: [Smarteiffel-commits] Traversable Message-ID: <43A8835B.7070409@worldonline.fr> Fred, if you consider "from_collection" should be renamed as "from_traversable", this probably mean that this feature should be in TRAVERSABLE, isn't it? -- Philippe Ribet The README file said "Requires Windows 95, NT 4.0, or better." So... I installed it on Linux! From zen at users.gforge.inria.fr Tue Dec 20 23:18:44 2005 From: zen at users.gforge.inria.fr (zen at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 22:18:44 +0000 Subject: [Smarteiffel-commits] r6734 - in trunk/lib/storage Message-ID: <20051220_221844_085965. zen@users.gforge.inria.fr> Author: zen Date: 2005-12-20 22:18:44 +0000 (Tue, 20 Dec 2005) New Revision: 6734 Modified: trunk/lib/storage/bijective_dictionary.e trunk/lib/storage/bijective_dictionary/hashed_bijective_dictionary.e Log: Better not to have an attribute in deferred BIJECTIVE_DICTIONARY Modified: trunk/lib/storage/bijective_dictionary/hashed_bijective_dictionary.e =================================================================== --- trunk/lib/storage/bijective_dictionary/hashed_bijective_dictionary.e 2005-12-20 22:14:35 UTC (rev 6733) +++ trunk/lib/storage/bijective_dictionary/hashed_bijective_dictionary.e 2005-12-20 22:18:44 UTC (rev 6734) @@ -9,6 +9,8 @@ make, with_capacity, manifest_creation feature {ANY} + count: INTEGER + has (k: K_): BOOLEAN is local node: like cache_node Modified: trunk/lib/storage/bijective_dictionary.e =================================================================== --- trunk/lib/storage/bijective_dictionary.e 2005-12-20 22:14:35 UTC (rev 6733) +++ trunk/lib/storage/bijective_dictionary.e 2005-12-20 22:18:44 UTC (rev 6734) @@ -21,9 +21,12 @@ end feature {ANY} -- Counting: - count: INTEGER + count: INTEGER is -- Actual `count' of stored elements. + deferred + end + is_empty: BOOLEAN is -- Is it empty ? do From frederic.merizen at loria.fr Tue Dec 20 23:57:53 2005 From: frederic.merizen at loria.fr (Frederic Merizen) Date: Tue, 20 Dec 2005 23:57:53 +0100 Subject: [Smarteiffel-commits] Traversable In-Reply-To: <43A8835B.7070409@worldonline.fr> References: <43A8835B.7070409@worldonline.fr> Message-ID: <1135119473.10669.18.camel@localhost.localdomain> Le mardi 20 dcembre 2005 23:19 +0100, Philippe Ribet a crit : > Fred, > > if you consider "from_collection" should be renamed as > "from_traversable", this probably mean that this feature should be in > TRAVERSABLE, isn't it? Nope. TRAVERSABLE is the readable half of COLLECTION. You can build any COLLECTION from something that can be read as a COLLECTION, but the converse is not necessarily true. From zen at users.gforge.inria.fr Wed Dec 21 00:00:52 2005 From: zen at users.gforge.inria.fr (zen at users.gforge.inria.fr) Date: Tue, 20 Dec 2005 23:00:52 +0000 Subject: [Smarteiffel-commits] r6735 - in trunk/lib/storage Message-ID: <20051220_230052_020911. zen@users.gforge.inria.fr> Author: zen Date: 2005-12-20 23:00:52 +0000 (Tue, 20 Dec 2005) New Revision: 6735 Added: trunk/lib/storage/bijective_dictionary/bijective_dictionary_reverser.e Modified: trunk/lib/storage/bijective_dictionary.e trunk/lib/storage/bijective_dictionary/hashed_bijective_dictionary.e Log: BIJECTIVE_DICTIONARY_REVERSER allows to view a BIJECTIVE_DICTIONARY[V_, K_] as a BIJECTIVE_DICTIONARY[K_, V_] Added: trunk/lib/storage/bijective_dictionary/bijective_dictionary_reverser.e =================================================================== --- trunk/lib/storage/bijective_dictionary/bijective_dictionary_reverser.e 2005-12-20 22:18:44 UTC (rev 6734) +++ trunk/lib/storage/bijective_dictionary/bijective_dictionary_reverser.e 2005-12-20 23:00:52 UTC (rev 6735) @@ -0,0 +1,162 @@ +-- See the Copyright notice at the end of this file. +-- +class BIJECTIVE_DICTIONARY_REVERSER[V_, K_] + -- Allows to view a BIJECTIVE_DICTIONARY[V_, K_] as a BIJECTIVE_DICTIONARY[K_, V_] + +inherit + BIJECTIVE_DICTIONARY[V_, K_] + +creation {ANY} + from_bijective_dictionary + +feature {ANY} + from_bijective_dictionary (bijective_dictionary_: like bijective_dictionary) is + do + bijective_dictionary := bijective_dictionary_ + end + + count: INTEGER is + do + Result := bijective_dictionary.count + end + + has (k: K_): BOOLEAN is + do + Result := bijective_dictionary.has_value(k) + end + + at (k: K_): V_ is + do + Result := bijective_dictionary.key_at(k) + end + + reference_at (k: K_): V_ is + do + if has(k) then + Result := at(k) + end + end + + fast_has (k: K_): BOOLEAN is + do + Result := bijective_dictionary.fast_has_value(k) + end + + fast_at (k: K_): V_ is + do + Result := bijective_dictionary.fast_key_at(k) + end + + fast_reference_at (k: K_): V_ is + do + if fast_has(k) then + Result := fast_at(k) + end + end + + has_value (v: V_): BOOLEAN is + do + Result := bijective_dictionary.has(v) + end + + key_at (v: V_): K_ is + do + Result := bijective_dictionary.at(v) + end + + fast_has_value (v: V_): BOOLEAN is + do + Result := bijective_dictionary.fast_has(v) + end + + fast_key_at (v: V_): K_ is + do + Result := bijective_dictionary.fast_at(v) + end + + put (v: V_; k: K_) is + do + bijective_dictionary.put(k, v) + end + + add (v: V_; k: K_) is + do + bijective_dictionary.add(k, v) + end + + remove (k: K_) is + local + v: V_ + do + if has(k) then + v := at(k) + bijective_dictionary.remove(v) + end + end + + clear_count is + do + bijective_dictionary.clear_count + end + + clear_count_and_capacity is + do + bijective_dictionary.clear_count_and_capacity + end + + capacity: INTEGER is + do + Result := bijective_dictionary.capacity + end + + item (index: INTEGER): V_ is + do + Result := bijective_dictionary.key(index) + end + + key (index: INTEGER): K_ is + do + Result := bijective_dictionary.item(index) + end + + copy (other: like Current) is + do + bijective_dictionary := other.bijective_dictionary + end + + internal_key (k: K_): K_ is + do + Result := key_at(at(k)) + end + +feature {BIJECTIVE_DICTIONARY} + bijective_dictionary: BIJECTIVE_DICTIONARY[K_, V_] + +end -- class BIJECTIVE_DICTIONARY_REVERSER +-- +-- ------------------------------------------------------------------------------------------------------------ +-- Copyright notice below. Please read. +-- +-- This file is part of the SmartEiffel standard library. +-- Copyright(C) 1994-2002: INRIA - LORIA (INRIA Lorraine) - ESIAL U.H.P. - University of Nancy 1 - FRANCE +-- Copyright(C) 2003-2006: INRIA - LORIA (INRIA Lorraine) - I.U.T. Charlemagne - University of Nancy 2 - FRANCE +-- +-- Authors: Dominique COLNET, Philippe RIBET, Cyril ADRIAN, Vincent CROIZIER, Frederic MERIZEN +-- +-- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated +-- documentation files (the "Software"), to deal in the Software without restriction, including without +-- limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +-- the Software, and to permit persons to whom the Software is furnished to do so, subject to the following +-- conditions: +-- +-- The above copyright notice and this permission notice shall be included in all copies or substantial +-- portions of the Software. +-- +-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT +-- LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO +-- EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +-- AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +-- OR OTHER DEALINGS IN THE SOFTWARE. +-- +-- http://SmartEiffel.loria.fr - SmartEiffel at loria.fr +-- ------------------------------------------------------------------------------------------------------------ Modified: trunk/lib/storage/bijective_dictionary/hashed_bijective_dictionary.e =================================================================== --- trunk/lib/storage/bijective_dictionary/hashed_bijective_dictionary.e 2005-12-20 22:18:44 UTC (rev 6734) +++ trunk/lib/storage/bijective_dictionary/hashed_bijective_dictionary.e 2005-12-20 23:00:52 UTC (rev 6735) @@ -312,6 +312,26 @@ -- the `capacity' value may not be always accurate depending of the implementation (anyway, this -- `capacity' value is at least equals to `count'). + copy (other: like Current) is + local + i: INTEGER + do + if capacity = 0 then + -- It is a brand new one probably created by `twin': + make + else + clear_count + end + from + i := 1 + until + i > other.count + loop + add(other.item(i), other.key(i)) + i := i + 1 + end + end + feature {} cache_user: INTEGER -- The last user's external index in range [1 .. `count'] (see `item' and `valid_index' for example) @@ -518,6 +538,13 @@ end end +feature {} -- Implement manifest generic creation. + manifest_make (needed_capacity: INTEGER) is + -- Manifest creation of a dictionary. + do + make + end + invariant capacity >= count free_nodes /= Void Modified: trunk/lib/storage/bijective_dictionary.e =================================================================== --- trunk/lib/storage/bijective_dictionary.e 2005-12-20 22:18:44 UTC (rev 6734) +++ trunk/lib/storage/bijective_dictionary.e 2005-12-20 23:00:52 UTC (rev 6735) @@ -23,7 +23,6 @@ feature {ANY} -- Counting: count: INTEGER is -- Actual `count' of stored elements. - deferred end @@ -281,23 +280,7 @@ copy (other: like Current) is -- Reinitialize by copying all associations of `other'. - local - i: INTEGER - do - if capacity = 0 then - -- It is a brand new one probably created by `twin': - make - else - clear_count - end - from - i := 1 - until - i > other.count - loop - add(other.item(i), other.key(i)) - i := i + 1 - end + deferred end feature {ANY} -- Agents based features: @@ -373,9 +356,6 @@ end feature {} - make is - deferred - end frozen key_safe_equal (k1, k2: K_): BOOLEAN is -- Because keys are never Void, we do not rely on the SAFE_EQUAL class. @@ -404,12 +384,6 @@ end feature {} -- Implement manifest generic creation. - manifest_make (needed_capacity: INTEGER) is - -- Manifest creation of a dictionary. - do - make - end - manifest_put (index: INTEGER; v: V_; k: K_) is require v /= Void From Dominique.Colnet at loria.fr Wed Dec 21 11:35:36 2005 From: Dominique.Colnet at loria.fr (Colnet Dominique) Date: Wed, 21 Dec 2005 11:35:36 +0100 Subject: [Smarteiffel-commits] r6731 - in trunk/lib/storage In-Reply-To: <20051220_214554_055020. zen@users.gforge.inria.fr> References: <20051220_214554_055020. zen@users.gforge.inria.fr> Message-ID: <43A92FF8.4010709@loria.fr> zen at users.gforge.inria.fr wrote: > - from_collection (model: COLLECTION[like item]) is > + from_collection (model: TRAVERSABLE[like item]) is Very good idea! -- -------------------------------------------------------------- Dominique.Colnet at loria.fr -- IUT (Nancy 2) -- INRIA Lorraine http://SmartEiffel.loria.fr -- The GNU Eiffel Compiler POST: Loria, B.P. 239,54506 Vandoeuvre les Nancy Cedex, FRANCE Voice:+33 0383913140 Mobile: +33 0665362381 Fax:+33 0383581701 From colnet at users.gforge.inria.fr Wed Dec 21 11:40:59 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Wed, 21 Dec 2005 10:40:59 +0000 Subject: [Smarteiffel-commits] r6736 - in trunk Message-ID: <20051221_104059_057089. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-21 10:40:59 +0000 (Wed, 21 Dec 2005) New Revision: 6736 Modified: trunk/lib/design_patterns/macro_command.e trunk/work/lib_test_pretty/test_pretty_bug02.e Log: Another consequence of my modification of COLLECTION (the new signature of index_of / fast_index_of). Modified: trunk/lib/design_patterns/macro_command.e =================================================================== --- trunk/lib/design_patterns/macro_command.e 2005-12-20 23:00:52 UTC (rev 6735) +++ trunk/lib/design_patterns/macro_command.e 2005-12-21 10:40:59 UTC (rev 6736) @@ -11,8 +11,6 @@ redefine copy, is_equal end COLLECTION[C_] - undefine first_index_of - end insert FAST_ARRAY[C_] Modified: trunk/work/lib_test_pretty/test_pretty_bug02.e =================================================================== --- trunk/work/lib_test_pretty/test_pretty_bug02.e 2005-12-20 23:00:52 UTC (rev 6735) +++ trunk/work/lib_test_pretty/test_pretty_bug02.e 2005-12-21 10:40:59 UTC (rev 6736) @@ -25,7 +25,7 @@ local i: INTEGER do - i := callbacks.fast_index_of(c) + i := callbacks.fast_first_index_of(c) if callbacks.valid_index(i) then callbacks.remove(i) end From colnet at users.gforge.inria.fr Wed Dec 21 17:39:32 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Wed, 21 Dec 2005 16:39:32 +0000 Subject: [Smarteiffel-commits] r6737 - in trunk/test_suite Message-ID: <20051221_163932_077487. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-21 16:39:31 +0000 (Wed, 21 Dec 2005) New Revision: 6737 Added: trunk/test_suite/lib/set/ trunk/test_suite/lib/set/lib_test_set/ Modified: trunk/test_suite/READ_ME.txt Log: Started to move a few test files for the eiffeltest group to have some more files to play with. Modified: trunk/test_suite/READ_ME.txt =================================================================== --- trunk/test_suite/READ_ME.txt 2005-12-21 10:40:59 UTC (rev 6736) +++ trunk/test_suite/READ_ME.txt 2005-12-21 16:39:31 UTC (rev 6737) @@ -1,7 +1,8 @@ -Please do not consider what is inside this directory. -THIS IS A WORK IN PROGRESS! +This directory as well as all subdirectories contains all tests of the SmartEiffel project. +To perform all tests of this directory as well as all test stored in subdirectorie, just do: + cd SmartEiffel/test_suite + se eiffeltest . -Actually, the whole test suite will be placed here -and you'll have new tools for class testing... in release -2.3 of SmartEiffel. -Be patient. +For more information, see also: + http://smarteiffel.loria.fr/wiki/en/index.php/Eiffeltest + Copied: trunk/test_suite/lib/set/lib_test_set (from rev 6736, trunk/work/lib_test_set) From colnet at users.gforge.inria.fr Wed Dec 21 17:42:07 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Wed, 21 Dec 2005 16:42:07 +0000 Subject: [Smarteiffel-commits] r6738 - trunk/test_suite/lib Message-ID: <20051221_164207_080584. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-21 16:42:06 +0000 (Wed, 21 Dec 2005) New Revision: 6738 Added: trunk/test_suite/lib/lib_test_set/ Removed: trunk/test_suite/lib/set/ Log: Still moving some tests. (learning svn actually) Copied: trunk/test_suite/lib/lib_test_set (from rev 6737, trunk/test_suite/lib/set/lib_test_set) From colnet at users.gforge.inria.fr Wed Dec 21 17:42:50 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Wed, 21 Dec 2005 16:42:50 +0000 Subject: [Smarteiffel-commits] r6739 - trunk/test_suite/lib Message-ID: <20051221_164250_022387. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-21 16:42:50 +0000 (Wed, 21 Dec 2005) New Revision: 6739 Added: trunk/test_suite/lib/set/ Removed: trunk/test_suite/lib/lib_test_set/ Log: Still moving tests. Copied: trunk/test_suite/lib/set (from rev 6738, trunk/test_suite/lib/lib_test_set) From colnet at users.gforge.inria.fr Wed Dec 21 17:48:59 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Wed, 21 Dec 2005 16:48:59 +0000 Subject: [Smarteiffel-commits] r6740 - in trunk/test_suite Message-ID: <20051221_164859_035644. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-21 16:48:59 +0000 (Wed, 21 Dec 2005) New Revision: 6740 Added: trunk/test_suite/eiffeltest/ trunk/test_suite/lib/eiffeltest/ trunk/test_suite/lib/number/ trunk/test_suite/lib/number/eiffeltest/ trunk/test_suite/lib/set/eiffeltest/ Removed: trunk/test_suite/lib/number/c_self_test trunk/test_suite/lib/number/c_self_test.ok trunk/test_suite/lib/number/c_self_test_do_it trunk/test_suite/lib/set/c_self_test trunk/test_suite/lib/set/c_self_test.ok trunk/test_suite/lib/set/c_self_test_do_it Log: The eiffeltest group can start with that. I will add error messages directory later when the redirection flag will be ready. Copied: trunk/test_suite/lib/number (from rev 6736, trunk/work/lib_test_number) Deleted: trunk/test_suite/lib/number/c_self_test =================================================================== --- trunk/work/lib_test_number/c_self_test 2005-12-21 10:40:59 UTC (rev 6736) +++ trunk/test_suite/lib/number/c_self_test 2005-12-21 16:48:59 UTC (rev 6740) @@ -1,25 +0,0 @@ -#!/bin/csh -f -# -# Error messages self test. -# -# Usage : c_self_test -# -source `dirname $0`/../tools/SE_conf || exit 1 - -#set verbose=1 -cd ${SE}/work/lib_test_number -echo -n Running work/lib_test_number/c_self_test ... -./c_self_test_do_it >&! c_self_test.out - -diff c_self_test.out c_self_test.ok >& /dev/null -if ($status) then - echo - echo '*****************************************************' - echo "ERROR during work/lib_test_number/c_self_test FAILED." - echo cd ${SE}/work/lib_test_number - echo diff c_self_test.out c_self_test.ok - echo '*****************************************************' - exit 1 -endif -#/bin/rm -f *.[cho] bench *.make -echo "." Deleted: trunk/test_suite/lib/number/c_self_test.ok =================================================================== --- trunk/work/lib_test_number/c_self_test.ok 2005-12-21 10:40:59 UTC (rev 6736) +++ trunk/test_suite/lib/number/c_self_test.ok 2005-12-21 16:48:59 UTC (rev 6740) @@ -1,105 +0,0 @@ -test_mutable_big_integer1.e................. -test_mutable_big_integer10.e................. -test_mutable_big_integer11.e................. -test_mutable_big_integer12.e................. -test_mutable_big_integer13.e................. -test_mutable_big_integer2.e................. -test_mutable_big_integer20.e................. -test_mutable_big_integer21.e................. -test_mutable_big_integer3.e................. -test_mutable_big_integer4.e................. -test_mutable_big_integer5.e................. -test_mutable_big_integer6.e................. -test_mutable_big_integer7.e................. -test_mutable_big_integer7bis.e................. -test_mutable_big_integer8.e................. -test_mutable_big_integer9.e................. -test_number00.e................. -test_number01.e................. -test_number02.e................. -test_number03.e................. -test_number04.e................. -test_number05.e................. -test_number06.e................. -test_number07.e................. -test_number08.e................. -test_number09.e................. -test_number10.e................. -test_number100.e................. -test_number101.e................. -test_number102.e................. -test_number103.e................. -test_number104.e................. -test_number105.e................. -test_number106.e................. -test_number107.e................. -test_number108.e................. -test_number109.e................. -test_number11.e................. -test_number110.e................. -test_number12.e................. -test_number13.e................. -test_number14.e................. -test_number15.e................. -test_number16.e................. -test_number17.e................. -test_number18.e................. -test_number19.e................. -test_number20.e................. -test_number21.e................. -test_number22.e................. -test_number23.e................. -test_number24.e................. -test_number25.e................. -test_number26.e................. -test_number27.e................. -test_number28.e................. -test_number29.e................. -test_number30.e................. -test_number31.e................. -test_number32.e................. -test_number33.e................. -test_number34.e................. -test_number35.e................. -test_number36.e................. -test_number37.e................. -test_number38.e................. -test_number39.e................. -test_number40.e................. -test_number41.e................. -test_number42.e................. -test_number43.e................. -test_number44.e................. -test_number45.e................. -test_number46.e................. -test_number47.e................. -test_number48.e................. -test_number49.e................. -test_number50.e................. -test_number51.e................. -test_number52.e................. -test_number53.e................. -test_number54.e................. -test_number55.e................. -test_number56.e................. -test_number57.e................. -test_number58.e................. -test_number59.e................. -test_number60.e................. -test_number61.e................. -test_number62.e................. -test_number63.e................. -test_number64.e................. -test_number65.e................. -test_number66.e................. -test_number67.e................. -test_number68.e................. -test_number69.e................. -test_number70.e................. -test_number71.e................. -test_number72.e................. -test_number74.e................. -test_number75.e................. -test_number76.e................. -test_number77.e................. -Done. Deleted: trunk/test_suite/lib/number/c_self_test_do_it =================================================================== --- trunk/work/lib_test_number/c_self_test_do_it 2005-12-21 10:40:59 UTC (rev 6736) +++ trunk/test_suite/lib/number/c_self_test_do_it 2005-12-21 16:48:59 UTC (rev 6740) @@ -1,25 +0,0 @@ -#!/bin/csh -f -# -# Usage : c_self_test_do_it -# -source `dirname $0`/../tools/SE_conf || exit 1 - -set compile="${SmartEiffelBin}/compile -clean" -cd ${SE}/work/lib_test_number -foreach f (test_mutable_*.e test_number*.e) - echo -n ${f} - foreach mode (-debug_check -no_check -boost -require_check -ensure_check -invariant_check -loop_check -all_check) - ${compile} -o xx -no_split ${mode} ${f} - echo -n "." - ./xx - if ($status) then - echo "Error work/lib_test_number/${f} ${mode}" - exit 1 - endif - clean ${f} - /bin/rm -f xx - echo -n "." - end - echo "." -end -echo "Done." Deleted: trunk/test_suite/lib/set/c_self_test =================================================================== --- trunk/test_suite/lib/set/c_self_test 2005-12-21 16:42:50 UTC (rev 6739) +++ trunk/test_suite/lib/set/c_self_test 2005-12-21 16:48:59 UTC (rev 6740) @@ -1,23 +0,0 @@ -#!/bin/csh -f -# -# Error messages self test. -# -# Usage : c_self_test -# -#set verbose=1 -source `dirname $0`/../tools/SE_conf || exit 1 - -cd ${SE}/work/lib_test_set -echo -n Running work/lib_test_set/c_self_test ... -./c_self_test_do_it >&! c_self_test.out -diff c_self_test.out c_self_test.ok >& /dev/null -if ($status) then - echo - echo '*****************************************************' - echo "ERROR during `pwd`/c_self_test FAILED." - echo cd `pwd` - echo diff c_self_test.out c_self_test.ok - echo '*****************************************************' - exit 1 -endif -echo "." Deleted: trunk/test_suite/lib/set/c_self_test.ok =================================================================== --- trunk/test_suite/lib/set/c_self_test.ok 2005-12-21 16:42:50 UTC (rev 6739) +++ trunk/test_suite/lib/set/c_self_test.ok 2005-12-21 16:48:59 UTC (rev 6740) @@ -1,52 +0,0 @@ -test_avl_set01.e................. -test_set00.e................. -test_set01.e................. -test_set02.e................. -test_set03.e................. -test_set04.e................. -test_set05.e................. -test_set06.e................. -test_set07.e................. -test_set08.e................. -test_set09.e................. -test_set10.e................. -test_set11.e................. -test_set12.e................. -test_set13.e................. -test_set14.e................. -test_set15.e................. -test_set16.e................. -test_set17.e................. -test_set18.e................. -test_set19.e................. -test_set20.e................. -test_set21.e................. -test_set22.e................. -test_set23.e................. -test_set24.e................. -test_set25.e................. -test_set26.e................. -test_set27.e................. -test_set28.e................. -test_set29.e................. -test_set30.e................. -test_set31.e................. -test_set32.e................. -test_set33.e................. -test_set34.e................. -test_set35.e................. -test_set36.e................. -test_set37.e................. -test_set38.e................. -test_set39.e................. -test_set40.e................. -test_set41.e................. -test_set42.e................. -test_set43.e................. -test_set44.e................. -test_set45.e................. -test_set46.e................. -test_set47.e................. -test_set48.e................. -test_set49.e................. -Done. Deleted: trunk/test_suite/lib/set/c_self_test_do_it =================================================================== --- trunk/test_suite/lib/set/c_self_test_do_it 2005-12-21 16:42:50 UTC (rev 6739) +++ trunk/test_suite/lib/set/c_self_test_do_it 2005-12-21 16:48:59 UTC (rev 6740) @@ -1,27 +0,0 @@ -#!/bin/csh -f -# -# Usage : c_self_test_do_it -# -source `dirname $0`/../tools/SE_conf || exit 1 - -cd ${SE}/work/lib_test_set -foreach f (test_*.e) - echo -n ${f} - foreach mode (-boost -no_check -require_check \ - -ensure_check -invariant_check \ - -loop_check -all_check \ - -debug_check) - compile -clean -o xx -no_split ${mode} ${f} - echo -n "." - ./xx - if ($status) then - echo "Error `pwd`/${f} ${mode}" - exit 1 - endif - clean ${f} - /bin/rm -f xx - echo -n "." - end - echo "." -end -echo "Done." From colnet at users.gforge.inria.fr Wed Dec 21 17:49:35 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Wed, 21 Dec 2005 16:49:35 +0000 Subject: [Smarteiffel-commits] r6741 - trunk/work Message-ID: <20051221_164935_037378. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-21 16:49:34 +0000 (Wed, 21 Dec 2005) New Revision: 6741 Removed: trunk/work/lib_test_number/ trunk/work/lib_test_set/ Log: Tests moved. From colnet at users.gforge.inria.fr Wed Dec 21 17:52:38 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Wed, 21 Dec 2005 16:52:38 +0000 Subject: [Smarteiffel-commits] r6742 - trunk/work/tools Message-ID: <20051221_165238_068029. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-21 16:52:37 +0000 (Wed, 21 Dec 2005) New Revision: 6742 Modified: trunk/work/tools/c_bootstrap Log: Test for NUMBER and SET are now in SmartEiffel/test_suite. Modified: trunk/work/tools/c_bootstrap =================================================================== --- trunk/work/tools/c_bootstrap 2005-12-21 16:49:34 UTC (rev 6741) +++ trunk/work/tools/c_bootstrap 2005-12-21 16:52:37 UTC (rev 6742) @@ -234,10 +234,6 @@ ${SE}/work/tools/pretty_test ${SE}/work/lib_test_pretty/c_self_test ################################################################### -${SE}/work/lib_test_number/c_self_test -################################################################### -${SE}/work/lib_test_set/c_self_test -################################################################### ${SE}/work/tools/ace_test ################################################################### ${SE}/work/lib_test_scoop/c_self_test From colnet at users.gforge.inria.fr Wed Dec 21 18:08:51 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Wed, 21 Dec 2005 17:08:51 +0000 Subject: [Smarteiffel-commits] r6743 - trunk/work/tools Message-ID: <20051221_170851_055815. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-21 17:08:50 +0000 (Wed, 21 Dec 2005) New Revision: 6743 Removed: trunk/work/tools/tarVision Modified: trunk/work/tools/SmartClean trunk/work/tools/VerifyAndStripTools Log: Cleaning and updating. Modified: trunk/work/tools/SmartClean =================================================================== --- trunk/work/tools/SmartClean 2005-12-21 16:52:37 UTC (rev 6742) +++ trunk/work/tools/SmartClean 2005-12-21 17:08:50 UTC (rev 6743) @@ -1,7 +1,7 @@ #!/bin/tcsh -f # # Try to clean as much as possible the SmartEiffel directory in order -# to avoid too many ? messages from CVS and also to try to avoid letting +# to avoid too many ? messages from SVN and also to try to avoid letting # dust-files in the delivery. # #------------------------------------------------------------------------ @@ -12,7 +12,7 @@ echo "Cleaning work/no_gc:" cd ${SE}/work/no_gc foreach f ( * ) - if( $f == CVS ) then + if( $f == ".svn" ) then continue endif if( $f == loadpath.se ) then @@ -27,7 +27,7 @@ echo "Cleaning work/with_gc:" cd ${SE}/work/with_gc foreach f ( * ) - if( $f == CVS ) then + if( $f == ".svn" ) then continue endif if( $f == loadpath.se ) then @@ -39,7 +39,7 @@ echo "Cleaning work/all_check:" cd ${SE}/work/all_check foreach f ( * ) - if( $f == CVS ) then + if( $f == ".svn" ) then continue endif if( $f == c2c.ace ) then Modified: trunk/work/tools/VerifyAndStripTools =================================================================== --- trunk/work/tools/VerifyAndStripTools 2005-12-21 16:52:37 UTC (rev 6742) +++ trunk/work/tools/VerifyAndStripTools 2005-12-21 17:08:50 UTC (rev 6743) @@ -42,7 +42,7 @@ cd ${SE}/install/germ echo Cleaning the install/germ directory foreach f ( * ) - if( $f == CVS ) then + if( $f == ".svn" ) then continue endif /bin/rm -rf $f Deleted: trunk/work/tools/tarVision =================================================================== --- trunk/work/tools/tarVision 2005-12-21 16:52:37 UTC (rev 6742) +++ trunk/work/tools/tarVision 2005-12-21 17:08:50 UTC (rev 6743) @@ -1,51 +0,0 @@ -#!/bin/csh -f -# -# Usage : tarVision -# -#set verbose=1 -source `dirname $0`/SE_conf || exit 1 - -if (`basename $SE` != "SmartEiffel") then - echo This scipt is only valid if the SmartEiffel root directory name - echo is SmartEiffel. \"`basename $SE`\" is not valid. - echo Please check the configuration file ${SmartEiffel}. - exit 1 -endif - -if (`basename $SmartEiffelSys` != "sys") then - echo This scipt is only valid if the SmartEiffel sys directory name - echo is SmartEiffel/sys. \"`basename $SmartEiffelSys`\" is not valid. - echo Please check the configuration file ${SmartEiffel}. - exit 1 -endif - -cd ${SE} -rm -f `find tutorial/signal -name '*.[ch]'` -rm -f `find tutorial/sequencer -name '*.[ch]'` -rm -f `find tutorial/vision -name '*.[ch]'` -cd .. -echo `pwd` -tar cvf - \ - --exclude='*~' --exclude='a.out' --exclude='*.id' --exclude='*.o' \ - --exclude='CVS' \ - SmartEiffel/work/tools/tarVision \ - SmartEiffel/work/tools/loadpath.se \ - SmartEiffel/sys/runtime/c/basic_draw.[ch] \ - SmartEiffel/sys/runtime/c/basic_file.[ch] \ - SmartEiffel/sys/runtime/c/basic_font.[ch] \ - SmartEiffel/sys/runtime/c/basic_guikit.[ch] \ - SmartEiffel/sys/runtime/c/basic_image.c \ - SmartEiffel/sys/runtime/c/basic_vision.[ch] \ - SmartEiffel/sys/runtime/c/basic_pixmap.[ch] \ - SmartEiffel/sys/runtime/c/basic_style.[ch] \ - SmartEiffel/sys/runtime/c/basic_window.[ch] \ - SmartEiffel/lib/signal \ - SmartEiffel/tutorial/signal \ - SmartEiffel/lib/sequencer \ - SmartEiffel/tutorial/sequencer \ - SmartEiffel/lib/vision \ - SmartEiffel/tutorial/vision | gzip -c > vision.tgz - -echo "" -echo "`pwd`/vision.tgz created." -echo " Done." From colnet at users.gforge.inria.fr Wed Dec 21 18:10:12 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Wed, 21 Dec 2005 17:10:12 +0000 Subject: [Smarteiffel-commits] r6744 - in trunk Message-ID: <20051221_171012_021668. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-21 17:10:12 +0000 (Wed, 21 Dec 2005) New Revision: 6744 Modified: trunk/tools/ace/ace.e trunk/tools/ace/cluster.e trunk/work/html/site/source/misc/_HISTORY.html Log: Removed the old rename.se file support. We can now start to work on automatic multiple synonyms classes. Modified: trunk/tools/ace/ace.e =================================================================== --- trunk/tools/ace/ace.e 2005-12-21 17:08:50 UTC (rev 6743) +++ trunk/tools/ace/ace.e 2005-12-21 17:10:12 UTC (rev 6744) @@ -843,7 +843,6 @@ local i: INTEGER once - handle_rename_se_files create {HASHED_DICTIONARY[TUPLE[CLUSTER, STRING], HASHED_STRING]} Result.with_capacity(1024) from i := cluster_list.lower @@ -878,23 +877,6 @@ Result := match_debug_keys(e_debug, default_debug_keys) end - rename_se_clash (full_name: STRING): STRING is - -- To handle old "rename.se" files. - require - file_path = Void - local - i: INTEGER - do - from - i := cluster_list.lower - until - Result /= Void or else i > cluster_list.upper - loop - Result := cluster_list.item(i).rename_se_clash(full_name) - i := i + 1 - end - end - feature {} set_root_class_name (rcn: HASHED_STRING) is do @@ -1707,25 +1689,6 @@ error_handler.print_as_fatal_error end - handle_rename_se_files is - -- To handle old "rename.se" files. - --|*** TO BE REMOVED FOR 2.3 *** - local - i: INTEGER - do - if not handle_rename_se_files_flag then - handle_rename_se_files_flag := True - from - i := cluster_list.lower - until - i > cluster_list.upper - loop - cluster_list.item(i).rename_se_read - i := i + 1 - end - end - end - set_highest_encountered_level (level: INTEGER) is do if level > highest_encountered_level then @@ -1735,9 +1698,6 @@ highest_encountered_level >= old highest_encountered_level end - handle_rename_se_files_flag: BOOLEAN - -- To handle old "rename.se" files. - sedb_flag: BOOLEAN singleton_memory: ACE is Modified: trunk/tools/ace/cluster.e =================================================================== --- trunk/tools/ace/cluster.e 2005-12-21 17:08:50 UTC (rev 6743) +++ trunk/tools/ace/cluster.e 2005-12-21 17:10:12 UTC (rev 6744) @@ -251,7 +251,7 @@ local bd: BASIC_DIRECTORY ft: FILE_TOOLS - path, file_name, renamed: STRING + path, file_name: STRING class_name: HASHED_STRING entry: TUPLE[CLUSTER, STRING] do @@ -276,16 +276,6 @@ if exclude_list = Void or else not exclude_list.has(file_name) then bd.compute_file_path_with(path, file_name) if ft.is_file(bd.last_entry) then - if rename_se /= Void then - -- To handle old "rename.se" files. - renamed := rename_se.reference_at(file_name) - if renamed /= Void then - file_name.copy(renamed) - check - renamed.has_suffix(once ".e") or else renamed.has_suffix(once ".E") - end - end - end file_name.remove_tail(2) file_name.to_upper class_name := string_aliaser.hashed_string(file_name) @@ -467,74 +457,6 @@ exclude_list.add_last(file_name) end - rename_se_clash (full_name: STRING): STRING is - -- To handle old "rename.se" files. - require - ace.file_path = Void - do - if rename_se /= Void then - if rename_se.has(full_name) then - create Result.make(256) - Result.append(directory_path) - system_tools.file_path(Result, rename_se.at(full_name)) - end - end - end - - rename_se_read is - -- Load the "rename.se" file. - --|*** TO BE REMOVED FOR 2.3 *** - local - full_name, short_name, clash, rename_extension: STRING - do - tmp_path.copy(directory_path) - rename_extension := once "rename.se" - if tmp_path.is_empty then - tmp_path.append(rename_extension) - else - system_tools.file_path(tmp_path, rename_extension) - end - echo.tfr_connect(tmp_file_read, tmp_path) - if tmp_file_read.is_connected then - error_handler.append("Old style %"rename.se%" file used (%"") - error_handler.append(tmp_file_read.path) - error_handler.append("%"). The %"rename.se%" mechanism may become obsolete % - %in the near futur. You should consider to use an ACE % - %file right now.") - error_handler.print_as_warning - from - create {HASHED_DICTIONARY[STRING, STRING]} rename_se.make - until - tmp_file_read.end_of_input - loop - tmp_file_read.read_word - full_name := tmp_file_read.last_string.twin - tmp_file_read.read_word - short_name := tmp_file_read.last_string.twin - if short_name.is_empty then - echo.w_put_string("Each line in %"rename.se%" files % - %need exactly two names.%N") - die_with_code(exit_failure_code) - end - clash := ace.rename_se_clash(full_name) - if clash /= Void then - echo.w_put_string("Multiple entry for %"") - echo.w_put_string(full_name) - echo.w_put_string("%" in %"rename.se%" files.%N% - %Clash for %N%"") - echo.w_put_string(short_name) - echo.w_put_string("%" and %N%"") - echo.w_put_string(clash) - echo.w_put_string(".%N") - die_with_code(exit_failure_code) - end - rename_se.put(full_name, short_name) - tmp_file_read.skip_separators - end - tmp_file_read.disconnect - end - end - feature {CLUSTER_VISITOR} name: STRING @@ -543,9 +465,6 @@ is_from_config: BOOLEAN feature {} - rename_se: DICTIONARY[STRING, STRING] - -- To handle the old "rename.se" files style. - default_assertion_level: INTEGER -- The default one for this cluster. Modified: trunk/work/html/site/source/misc/_HISTORY.html =================================================================== --- trunk/work/html/site/source/misc/_HISTORY.html 2005-12-21 17:08:50 UTC (rev 6743) +++ trunk/work/html/site/source/misc/_HISTORY.html 2005-12-21 17:10:12 UTC (rev 6744) @@ -19,6 +19,13 @@ Again, a lot of novelties for this release. +
  • The new eiffeltest tools is now available.
  • + +
  • The new eiffeldoc tools is now available too.
  • + +
  • Old style "rename.se" files are no longer considered. You can now +use the same class name in different clusters.
  • +
  • In class COLLECTION, features index_of and fast_index_of now have an extra argument to indicate where the search must start (as in class STRING).
  • From colnet at users.gforge.inria.fr Wed Dec 21 19:25:29 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Wed, 21 Dec 2005 18:25:29 +0000 Subject: [Smarteiffel-commits] r6745 - in trunk/tools Message-ID: <20051221_182529_058876. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-21 18:25:28 +0000 (Wed, 21 Dec 2005) New Revision: 6745 Modified: trunk/tools/commands/compile.e trunk/tools/commands/compile_to_c.e trunk/tools/commands/compile_to_jvm.e trunk/tools/kernel/echo.e trunk/tools/kernel/error_handler.e trunk/tools/utils/command_line_tools.e Log: Started to add the new "-output_error_warning_on" flag. As soon as we all agree on the name of this flag, it will be time to update the documentation. It is not yet working correctly, but I must go home. If someone wants to go on, it is ok. Modified: trunk/tools/commands/compile.e =================================================================== --- trunk/tools/commands/compile.e 2005-12-21 17:10:12 UTC (rev 6744) +++ trunk/tools/commands/compile.e 2005-12-21 18:25:28 UTC (rev 6745) @@ -179,6 +179,12 @@ argi := argi + 1 elseif is_clean_flag(arg) then argi := argi + 1 + elseif is_output_error_warning_on_flag(arg, argi) then + if pass = 2 then + compile_to_c_pass_argument(arg) + compile_to_c_pass_argument(argument(argi + 1)) + end + argi := argi + 2 elseif one_arg_flag(arg) then compile_to_c_pass_argument(arg) argi := argi + 1 Modified: trunk/tools/commands/compile_to_c.e =================================================================== --- trunk/tools/commands/compile_to_c.e 2005-12-21 17:10:12 UTC (rev 6744) +++ trunk/tools/commands/compile_to_c.e 2005-12-21 18:25:28 UTC (rev 6745) @@ -176,6 +176,8 @@ argi := argi + 1 elseif is_profile(arg) then argi := argi + 1 + elseif is_output_error_warning_on_flag(arg, argi) then + argi := argi + 2 elseif flag_match(once "precompile_header", arg) then argi := argi + 1 if pass = 2 then Modified: trunk/tools/commands/compile_to_jvm.e =================================================================== --- trunk/tools/commands/compile_to_jvm.e 2005-12-21 17:10:12 UTC (rev 6744) +++ trunk/tools/commands/compile_to_jvm.e 2005-12-21 18:25:28 UTC (rev 6745) @@ -117,6 +117,8 @@ argi := argi + 2 elseif is_o_flag(arg, argi) then argi := argi + 2 + elseif is_output_error_warning_on_flag(arg, argi) then + argi := argi + 2 elseif is_jar(arg) then argi := argi + 1 elseif is_run(arg) then @@ -135,10 +137,6 @@ argi := argi + 2 elseif is_classpath(arg, argi) then argi := argi + 2 - elseif is_clean_classes(arg) then - argi := argi + 1 - elseif is_hard_clean(arg) then - argi := argi + 1 elseif flag_match(fz_loadpath, arg) then if argi < argument_count then system_tools.add_loadpath_file(argument(argi + 1)) Modified: trunk/tools/kernel/echo.e =================================================================== --- trunk/tools/kernel/echo.e 2005-12-21 17:10:12 UTC (rev 6744) +++ trunk/tools/kernel/echo.e 2005-12-21 18:25:28 UTC (rev 6745) @@ -22,43 +22,43 @@ feature {} make is do + -- Setting the default `output_stream': + output_stream := std_output end -feature {ANY} - -- To echo some additional information (echo is only done - -- when `verbose' is True). +feature {ANY} -- To echo some additional information (echo is only done when `verbose' is True). put_string (msg: STRING) is do if verbose then - std_output.put_string(msg) + output_stream.put_string(msg) end end put_character (c: CHARACTER) is do if verbose then - std_output.put_character(c) + output_stream.put_character(c) end end put_new_line is do if verbose then - std_output.put_new_line + output_stream.put_new_line end end put_integer (i: INTEGER) is do if verbose then - std_output.put_integer(i) + output_stream.put_integer(i) end end put_real_format (real: REAL; format: INTEGER) is do if verbose then - std_output.put_real_format(real, format) + output_stream.put_real_format(real, format) end end @@ -79,7 +79,7 @@ end file_removing (path: STRING) is - -- If `path' is an existing file, echo a message on `std_output' + -- If `path' is an existing file, echo a message on `output_stream' -- while removing the file. Otherwise, do nothing. require path /= Void @@ -315,29 +315,76 @@ flush is do - std_output.flush - std_error.flush + output_stream.flush + if output_path = Void then + std_error.flush + end end feature {ANY} -- To echo some warning or some problem (echo is done whathever the value of `verbose'). w_put_string (msg: STRING) is do - std_error.put_string(msg) - std_error.flush + if output_path = Void then + std_error.put_string(msg) + std_error.flush + else + output_stream.put_string(msg) + output_stream.flush + end end w_put_character (c: CHARACTER) is do - std_error.put_character(c) - std_error.flush + if output_path = Void then + std_error.put_character(c) + std_error.flush + else + output_stream.put_character(c) + output_stream.flush + end end w_put_integer (i: INTEGER) is do - std_error.put_integer(i) - std_error.flush + if output_path = Void then + std_error.put_integer(i) + std_error.flush + else + output_stream.put_integer(i) + output_stream.flush + end end +feature {ACE, COMMAND_LINE_TOOLS} + output_path: STRING + + output_stream: OUTPUT_STREAM + + redirect_output_on (new_output_path: like output_path) is + local + text_file_write: TEXT_FILE_WRITE + do + if output_path /= Void then + -- Because we have to search for the -verbose flag first, it is just normal when + -- `redirect_output_on' is called more than once. + if new_output_path.is_equal(output_path) then + + end + else + create text_file_write.connect_to(new_output_path) + if text_file_write.is_connected then + -- We can now safely apply the redirection: + output_path := new_output_path + output_stream := text_file_write + else + w_put_string(once "Unable to write error(s)/warning(s) redirection output file %"") + w_put_string(new_output_path) + w_put_string(once "%".%NCommand aborted.%N") + die_with_code(exit_failure_code) + end + end + end + feature {ACE, COMMAND_LINE_TOOLS, SE} set_verbose is do Modified: trunk/tools/kernel/error_handler.e =================================================================== --- trunk/tools/kernel/error_handler.e 2005-12-21 17:10:12 UTC (rev 6744) +++ trunk/tools/kernel/error_handler.e 2005-12-21 18:25:28 UTC (rev 6745) @@ -10,6 +10,7 @@ inherit ANY + insert GLOBALS Modified: trunk/tools/utils/command_line_tools.e =================================================================== --- trunk/tools/utils/command_line_tools.e 2005-12-21 17:10:12 UTC (rev 6744) +++ trunk/tools/utils/command_line_tools.e 2005-12-21 18:25:28 UTC (rev 6745) @@ -105,20 +105,24 @@ -- Memory of `is_help_flag'. search_for_verbose_flag is - -- Seach the -verbose flag amongs arguments in order to - -- become verbose as soon as possible (should be called - -- first when the command accept this flag). + -- Seach the -verbose flag amongs arguments in order to become verbose as soon as possible (should be + -- called first when the command accept this flag). local - i: INTEGER + argi: INTEGER; arg: STRING do from - i := argument_count + argi := 1 until - i = 0 + argi = argument_count loop - if is_verbose_flag(argument(i)) then + arg := argument(argi) + if is_verbose_flag(arg) then + argi := argi + 1 + elseif is_output_error_warning_on_flag(arg, argi) then + argi := argi + 2 + else + argi := argi + 1 end - i := i - 1 end echo.put_string(smart_eiffel.copyright) end @@ -355,6 +359,23 @@ end end + is_output_error_warning_on_flag (flag: STRING; argi: INTEGER): BOOLEAN is + local + new_output_path: STRING + do + if flag_match(once "output_error_warning_on", flag) then + Result := True + if argi < argument_count then + new_output_path := argument(argi + 1) + echo.redirect_output_on(new_output_path) + else + echo.w_put_string(command_name) + echo.w_put_string(": missing file path name after -output_error_warning_on flag.%N") + die_with_code(exit_failure_code) + end + end + end + is_cecil_flag (flag: STRING; argi: INTEGER): BOOLEAN is do if flag_match(fz_cecil, flag) then @@ -425,7 +446,7 @@ end end - is_jar(flag: STRING): BOOLEAN is + is_jar (flag: STRING): BOOLEAN is do if flag_match(fz_flag_jar, flag) then ace.set_jar @@ -433,7 +454,7 @@ end end - is_run(flag: STRING): BOOLEAN is + is_run (flag: STRING): BOOLEAN is do if flag_match(fz_flag_run, flag) then ace.set_run @@ -441,7 +462,7 @@ end end - is_use_jar(flag: STRING; argi: INTEGER): BOOLEAN is + is_use_jar (flag: STRING; argi: INTEGER): BOOLEAN is do if flag_match(fz_flag_use_jar, flag) then Result := True @@ -458,7 +479,7 @@ end end - is_use_jvm(flag: STRING; argi: INTEGER): BOOLEAN is + is_use_jvm (flag: STRING; argi: INTEGER): BOOLEAN is do if flag_match(fz_flag_use_jvm, flag) then Result := True @@ -475,7 +496,7 @@ end end - is_java_compiler(flag: STRING; argi: INTEGER): BOOLEAN is + is_java_compiler (flag: STRING; argi: INTEGER): BOOLEAN is do if flag_match(fz_flag_java_compiler, flag) then Result := True @@ -491,7 +512,7 @@ end end - is_ss(flag: STRING; argi: INTEGER): BOOLEAN is + is_ss (flag: STRING; argi: INTEGER): BOOLEAN is do if flag_match(fz_flag_ss, flag) then Result := True @@ -508,7 +529,7 @@ end end - is_mx(flag: STRING; argi: INTEGER): BOOLEAN is + is_mx (flag: STRING; argi: INTEGER): BOOLEAN is do if flag_match(fz_flag_mx, flag) then Result := True @@ -525,7 +546,7 @@ end end - is_ms(flag: STRING; argi: INTEGER): BOOLEAN is + is_ms (flag: STRING; argi: INTEGER): BOOLEAN is do if flag_match(fz_flag_ms, flag) then Result := True @@ -542,7 +563,7 @@ end end - is_classpath(flag: STRING; argi: INTEGER): BOOLEAN is + is_classpath (flag: STRING; argi: INTEGER): BOOLEAN is do if flag_match(fz_flag_classpath, flag) then Result := True @@ -559,22 +580,6 @@ end end - is_clean_classes(flag: STRING): BOOLEAN is - do - if flag_match(fz_flag_clean_classes, flag) then - ace.set_clean_classes - Result := True - end - end - - is_hard_clean(flag: STRING): BOOLEAN is - do - if flag_match(fz_flag_hard_clean, flag) then - ace.set_hard_clean - Result := True - end - end - level_flag: STRING check_for_level (new_level_flag: STRING) is From colnet at users.gforge.inria.fr Thu Dec 22 10:56:08 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Thu, 22 Dec 2005 09:56:08 +0000 Subject: [Smarteiffel-commits] r6746 - trunk/work/tools Message-ID: <20051222_095608_052252. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-22 09:56:07 +0000 (Thu, 22 Dec 2005) New Revision: 6746 Modified: trunk/work/tools/c_short_test_do_it Log: CVS -> .svn Modified: trunk/work/tools/c_short_test_do_it =================================================================== --- trunk/work/tools/c_short_test_do_it 2005-12-21 18:25:28 UTC (rev 6745) +++ trunk/work/tools/c_short_test_do_it 2005-12-22 09:56:07 UTC (rev 6746) @@ -6,7 +6,7 @@ # For the ${SE}/lib: cd ${SE}/lib -foreach f (`find . -type d | grep -v CVS`) +foreach f (`find . -type d | grep -v ".svn"`) if ($f == ".") then # No *.e files SmartEiffel/lib to short. continue From colnet at users.gforge.inria.fr Thu Dec 22 12:46:09 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Thu, 22 Dec 2005 11:46:09 +0000 Subject: [Smarteiffel-commits] r6747 - in trunk Message-ID: <20051222_114609_024459. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-22 11:46:08 +0000 (Thu, 22 Dec 2005) New Revision: 6747 Removed: trunk/misc/rename.se Modified: trunk/tools/commands/compile.e trunk/tools/commands/compile_to_c.e trunk/tools/commands/compile_to_jvm.e trunk/tools/commands/se.e trunk/tools/kernel/echo.e trunk/tools/kernel/error_handler.e trunk/tools/utils/command_line_tools.e Log: ECHO redirection in progress. Still to be tested. Flag name -output_error_warning_on may change in the futur (discussion not closed). Deleted: trunk/misc/rename.se =================================================================== --- trunk/misc/rename.se 2005-12-22 09:56:07 UTC (rev 6746) +++ trunk/misc/rename.se 2005-12-22 11:46:08 UTC (rev 6747) @@ -1,15 +0,0 @@ -boolean_ref.e bool_ref.e -character.e char.e -character_ref.e char_ref.e -comparable.e compar.e -dictionary.e dictnry.e -double_ref.e dou_ref.e -integer_ref.e int_ref.e -std_error.e stderr.e -std_file.e sf.e -std_file_read.e sf_read.e -std_file_read_write.e sf_rw.e -std_file_write.e sf_write.e -std_input.e stdin.e -std_input_output.e stdinout.e -std_output.e stdout.e Modified: trunk/tools/commands/compile.e =================================================================== --- trunk/tools/commands/compile.e 2005-12-22 09:56:07 UTC (rev 6746) +++ trunk/tools/commands/compile.e 2005-12-22 11:46:08 UTC (rev 6747) @@ -86,6 +86,10 @@ if argument_count < 1 then system_tools.bad_use_exit(command_name, command_line_help_summary) end + if search_for_echo_redirect_flag /= Void then + -- Because we must not overwrite the output of `compile_to_c': + echo.redirect_output_on_dev_null + end search_for_verbose_flag search_for_cc_flag if ini_parser.section_has(fz_conf_general, once "c2c") then Modified: trunk/tools/commands/compile_to_c.e =================================================================== --- trunk/tools/commands/compile_to_c.e 2005-12-22 09:56:07 UTC (rev 6746) +++ trunk/tools/commands/compile_to_c.e 2005-12-22 11:46:08 UTC (rev 6747) @@ -88,7 +88,7 @@ make is -- Command line parsing has two passes: first, options are parsed and then, the extra options are added. local - string_command_line: STRING_COMMAND_LINE + string_command_line: STRING_COMMAND_LINE; echo_redirect: STRING do system_tools.set_plugin_factory(create {C_PLUGIN_FACTORY}.make) eiffel_parser.set_drop_comments @@ -96,6 +96,10 @@ if argument_count < 1 then system_tools.bad_use_exit(command_name, command_line_help_summary) end + echo_redirect := search_for_echo_redirect_flag + if echo_redirect /= Void then + echo.redirect_output_on(echo_redirect) + end search_for_verbose_flag search_for_cc_flag if ace_file_mode then @@ -117,6 +121,7 @@ smart_eiffel.compile(cpp) id_provider.disk_save string_aliaser.echo_information + echo.before_exit_close end parse_command_line (pass: INTEGER) is Modified: trunk/tools/commands/compile_to_jvm.e =================================================================== --- trunk/tools/commands/compile_to_jvm.e 2005-12-22 09:56:07 UTC (rev 6746) +++ trunk/tools/commands/compile_to_jvm.e 2005-12-22 11:46:08 UTC (rev 6747) @@ -80,6 +80,7 @@ local argi: INTEGER; arg, executable_name: STRING; string_command_line: STRING_COMMAND_LINE bd: BASIC_DIRECTORY; cmd, tgt: STRING; cmd_res : INTEGER; tfw: TEXT_FILE_WRITE + echo_redirect: STRING do system_tools.set_plugin_factory(create {JVM_PLUGIN_FACTORY}.make) eiffel_parser.set_drop_comments @@ -87,6 +88,10 @@ if argument_count < 1 then system_tools.bad_use_exit(command_name, command_line_help_summary) end + echo_redirect := search_for_echo_redirect_flag + if echo_redirect /= Void then + echo.redirect_output_on(echo_redirect) + end search_for_verbose_flag if not ace_file_mode then from @@ -231,6 +236,7 @@ if ace.clean_classes then jvm.clean_output_directory end + echo.before_exit_close end is_valid_argument_for_ace_mode (arg: STRING): BOOLEAN is Modified: trunk/tools/commands/se.e =================================================================== --- trunk/tools/commands/se.e 2005-12-22 09:56:07 UTC (rev 6746) +++ trunk/tools/commands/se.e 2005-12-22 11:46:08 UTC (rev 6747) @@ -34,6 +34,9 @@ local plugin: STRING do + if search_for_echo_redirect_flag /= Void then + echo.redirect_output_on_dev_null + end if system_tools /= Void then end create stack.make Modified: trunk/tools/kernel/echo.e =================================================================== --- trunk/tools/kernel/echo.e 2005-12-22 09:56:07 UTC (rev 6746) +++ trunk/tools/kernel/echo.e 2005-12-22 11:46:08 UTC (rev 6747) @@ -19,6 +19,25 @@ verbose: BOOLEAN -- Is `echo' verbose (default is False). + before_exit_close is + -- Must be called just before exit in order to remove a possibly empty `redirect_output_on' + -- file. + local + file_tools: FILE_TOOLS + do + output_stream.flush + if output_path /= Void and then not (once "/dev/null").is_equal(output_path) then + output_stream.disconnect + output_stream := std_output + if file_tools.is_empty(output_path) then + file_tools.delete(output_path) + end + output_path := Void + end + ensure + not redirected + end + feature {} make is do @@ -87,7 +106,7 @@ if (create {FILE_TOOLS}).is_readable(path) then put_string(once "Removing %"") put_string(path) - put_string(fz_b0) + put_string(once "%".%N") (create {FILE_TOOLS}).delete(path) end ensure @@ -103,7 +122,7 @@ put_string(old_path) put_string(once "%" as %"") put_string(new_path) - put_string(fz_b0) + put_string(once "%".%N") (create {FILE_TOOLS}).rename_to(old_path, new_path) end @@ -120,7 +139,7 @@ else w_put_string(once "Cannot write file %"") w_put_string(path) - w_put_string(fz_b0) + w_put_string(once "%".%N") die_with_code(exit_failure_code) end ensure @@ -134,7 +153,7 @@ do put_string(once "Trying to read file %"") put_string(path) - put_string(fz_b0) + put_string(once "%".%N") tfr.connect_to(path) end @@ -160,11 +179,11 @@ do put_string(once "Reading one word in %"") put_string(tfr.path) - put_string(fz_b0) + put_string(once "%".%N") if tfr.end_of_input then w_put_string(once "Unexpected end_of_input while reading %"") w_put_string(tfr.path) - w_put_string(fz_b0) + w_put_string(once "%".%N") die_with_code(exit_failure_code) else tfr.read_word @@ -201,7 +220,7 @@ else put_string(once "System call %"") put_string(cmd) - put_string(fz_b0) + put_string(once "%".%N") Result := s.execute_command(cmd) end end @@ -355,36 +374,46 @@ end end -feature {ACE, COMMAND_LINE_TOOLS} +feature {} output_path: STRING + -- Non Void indicates that `echo' is redirected. output_stream: OUTPUT_STREAM + -- Usually `std_output', but may be something else in case of redirection of `echo'. +feature {COMPILE_TO_C, COMPILE_TO_JVM} redirect_output_on (new_output_path: like output_path) is + -- -output_error_warning_on + require + not new_output_path.is_empty + output_path = Void local text_file_write: TEXT_FILE_WRITE do - if output_path /= Void then - -- Because we have to search for the -verbose flag first, it is just normal when - -- `redirect_output_on' is called more than once. - if new_output_path.is_equal(output_path) then - - end + create text_file_write.connect_to(new_output_path) + if text_file_write.is_connected then + -- We can now safely apply the redirection: + output_path := new_output_path + output_stream := text_file_write else - create text_file_write.connect_to(new_output_path) - if text_file_write.is_connected then - -- We can now safely apply the redirection: - output_path := new_output_path - output_stream := text_file_write - else - w_put_string(once "Unable to write error(s)/warning(s) redirection output file %"") - w_put_string(new_output_path) - w_put_string(once "%".%NCommand aborted.%N") - die_with_code(exit_failure_code) - end + w_put_string(once "Unable to write error(s)/warning(s) redirection output file %"") + w_put_string(new_output_path) + w_put_string(once "%".%NCommand aborted.%N") + die_with_code(exit_failure_code) end end +feature {COMPILE, SE} + redirect_output_on_dev_null is + require + output_path = Void + do + output_path := once "/dev/null" + create {NULL_OUTPUT_STREAM} output_stream + ensure + not output_path.is_emty + end + feature {ACE, COMMAND_LINE_TOOLS, SE} set_verbose is do Modified: trunk/tools/kernel/error_handler.e =================================================================== --- trunk/tools/kernel/error_handler.e 2005-12-22 09:56:07 UTC (rev 6746) +++ trunk/tools/kernel/error_handler.e 2005-12-22 11:46:08 UTC (rev 6747) @@ -154,6 +154,7 @@ if error_counter >= 6 then echo.w_put_string(fz_error_stars) echo.w_put_string(once "Too many errors.%N") + echo.before_exit_close die_with_code(exit_failure_code) end ensure @@ -169,6 +170,7 @@ do sedb_breakpoint do_print(once "Fatal Error") + echo.before_exit_close die_with_code(exit_failure_code) end Modified: trunk/tools/utils/command_line_tools.e =================================================================== --- trunk/tools/utils/command_line_tools.e 2005-12-22 09:56:07 UTC (rev 6746) +++ trunk/tools/utils/command_line_tools.e 2005-12-22 11:46:08 UTC (rev 6747) @@ -104,24 +104,44 @@ help_flag: BOOLEAN -- Memory of `is_help_flag'. + search_for_echo_redirect_flag: STRING is + -- Seach for the -output_error_warning_on flag amongs arguments in order to apply redirection as + -- early as possible (should be called first when the command accept this flag). + -- A non Void `Result' indicates the redirection path. + local + argi: INTEGER; arg: STRING + do + from + argi := 1 + until + argi > argument_count + loop + arg := argument(argi) + if is_output_error_warning_on_flag(arg, argi) then + Result := argument(argi + 1) + argi := argument_count + 1 + else + argi := argi + 1 + end + end + end + search_for_verbose_flag is -- Seach the -verbose flag amongs arguments in order to become verbose as soon as possible (should be - -- called first when the command accept this flag). + -- called after `search_for_echo_redirect_flag' when the command accept this flag). local argi: INTEGER; arg: STRING do from - argi := 1 + argi := argument_count until - argi = argument_count + argi = 0 loop arg := argument(argi) if is_verbose_flag(arg) then - argi := argi + 1 - elseif is_output_error_warning_on_flag(arg, argi) then - argi := argi + 2 + argi := 0 else - argi := argi + 1 + argi := argi - 1 end end echo.put_string(smart_eiffel.copyright) @@ -360,22 +380,17 @@ end is_output_error_warning_on_flag (flag: STRING; argi: INTEGER): BOOLEAN is - local - new_output_path: STRING do if flag_match(once "output_error_warning_on", flag) then Result := True - if argi < argument_count then - new_output_path := argument(argi + 1) - echo.redirect_output_on(new_output_path) - else + if argi >= argument_count then echo.w_put_string(command_name) echo.w_put_string(": missing file path name after -output_error_warning_on flag.%N") die_with_code(exit_failure_code) end end end - + is_cecil_flag (flag: STRING; argi: INTEGER): BOOLEAN is do if flag_match(fz_cecil, flag) then From colnet at users.gforge.inria.fr Fri Dec 23 11:46:30 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Fri, 23 Dec 2005 10:46:30 +0000 Subject: [Smarteiffel-commits] r6748 - in trunk Message-ID: <20051223_104630_005060. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-23 10:46:28 +0000 (Fri, 23 Dec 2005) New Revision: 6748 Modified: trunk/tools/ace/ace.e trunk/tools/commands/ace_check.e trunk/tools/commands/clean.e trunk/tools/commands/compile.e trunk/tools/commands/install.e trunk/tools/kernel/echo.e trunk/tools/parser/eiffel_parser.e trunk/tools/utils/command_line_tools.e trunk/work/lib_test3/c_self_test_do_it trunk/work/tools/c_short_test.ok trunk/work/tools/pretty_test.ok Log: Mostly cosmetic. Modified: trunk/tools/ace/ace.e =================================================================== --- trunk/tools/ace/ace.e 2005-12-22 11:46:08 UTC (rev 6747) +++ trunk/tools/ace/ace.e 2005-12-23 10:46:28 UTC (rev 6748) @@ -667,7 +667,7 @@ else txt.append(" no_warning (no)%N") end - if echo.verbose then + if echo.is_verbose then txt.append(" verbose (yes)%N") else txt.append(" verbose (no)%N") @@ -1018,7 +1018,7 @@ end a_system_level_defaults: BOOLEAN is - -- The `Result' is used to delay the `echo.verbose' value setting + -- The `Result' is used to delay the `echo.is_verbose' value setting local stop: BOOLEAN dummy: like default_assertion_level Modified: trunk/tools/commands/ace_check.e =================================================================== --- trunk/tools/commands/ace_check.e 2005-12-22 11:46:08 UTC (rev 6747) +++ trunk/tools/commands/ace_check.e 2005-12-23 10:46:28 UTC (rev 6748) @@ -37,7 +37,7 @@ string_command_line.set_command_name(command_name) if ace_file_mode then end - verbose := echo.verbose + verbose := echo.is_verbose echo.unset_verbose from argi := 1 Modified: trunk/tools/commands/clean.e =================================================================== --- trunk/tools/commands/clean.e 2005-12-22 11:46:08 UTC (rev 6747) +++ trunk/tools/commands/clean.e 2005-12-23 10:46:28 UTC (rev 6748) @@ -317,7 +317,7 @@ do if no_remove_flag then if (create {FILE_TOOLS}).is_readable(path) then - if echo.verbose then + if echo.is_verbose then echo.put_string(once "File %"") echo.put_string(path) echo.put_string(once "%" would be removed without -no_remove flag.%N") @@ -335,7 +335,7 @@ do if no_remove_flag then if (create {FILE_TOOLS}).is_readable(empty_directory_path) then - if echo.verbose then + if echo.is_verbose then echo.put_string(once "Directory %"") echo.put_string(empty_directory_path) echo.put_string(once "%" would be removed without -no_remove flag.%N") Modified: trunk/tools/commands/compile.e =================================================================== --- trunk/tools/commands/compile.e 2005-12-22 11:46:08 UTC (rev 6747) +++ trunk/tools/commands/compile.e 2005-12-23 10:46:28 UTC (rev 6748) @@ -152,7 +152,7 @@ if ace.clean then command.clear_count system_tools.command_path_in(command, once "clean") - if echo.verbose then + if echo.is_verbose then command.append(once " -verbose") end command.extend(' ') Modified: trunk/tools/commands/install.e =================================================================== --- trunk/tools/commands/install.e 2005-12-22 11:46:08 UTC (rev 6747) +++ trunk/tools/commands/install.e 2005-12-23 10:46:28 UTC (rev 6748) @@ -3408,7 +3408,7 @@ end invariant - not echo.verbose + not echo.is_verbose install = Current Modified: trunk/tools/kernel/echo.e =================================================================== --- trunk/tools/kernel/echo.e 2005-12-22 11:46:08 UTC (rev 6747) +++ trunk/tools/kernel/echo.e 2005-12-23 10:46:28 UTC (rev 6748) @@ -3,9 +3,8 @@ -- class ECHO -- - -- Unique Global Object in charge of ECHOing some information - -- messages during compilation for example. - -- This object is used to implement the flag "-verbose". + -- Unique Global Object in charge of ECHOing some information messages during compilation for example. + -- This object is used to implement the "-verbose" flag as well as the "-output_error_warning_on" flag. -- -- @@ -16,9 +15,15 @@ make feature {ANY} - verbose: BOOLEAN - -- Is `echo' verbose (default is False). + is_verbose: BOOLEAN + -- Is the `echo' in -verbose mode (default is False). + is_redirected: BOOLEAN is + -- Is the `echo' redirected (when -output_error_warning_on flag is used). + do + Result := output_path /= Void + end + before_exit_close is -- Must be called just before exit in order to remove a possibly empty `redirect_output_on' -- file. @@ -26,16 +31,19 @@ file_tools: FILE_TOOLS do output_stream.flush - if output_path /= Void and then not (once "/dev/null").is_equal(output_path) then - output_stream.disconnect - output_stream := std_output - if file_tools.is_empty(output_path) then - file_tools.delete(output_path) + if is_redirected then + if not is_redirected_on_dev_null then + output_stream.disconnect + output_stream := std_output + if file_tools.is_empty(output_path) then + file_tools.delete(output_path) + end end output_path := Void + output_stream := std_output end ensure - not redirected + not is_redirected end feature {} @@ -45,38 +53,38 @@ output_stream := std_output end -feature {ANY} -- To echo some additional information (echo is only done when `verbose' is True). +feature {ANY} -- To echo some additional information (echo is only done when `is_verbose' is True). put_string (msg: STRING) is do - if verbose then + if is_verbose then output_stream.put_string(msg) end end put_character (c: CHARACTER) is do - if verbose then + if is_verbose then output_stream.put_character(c) end end put_new_line is do - if verbose then + if is_verbose then output_stream.put_new_line end end put_integer (i: INTEGER) is do - if verbose then + if is_verbose then output_stream.put_integer(i) end end put_real_format (real: REAL; format: INTEGER) is do - if verbose then + if is_verbose then output_stream.put_real_format(real, format) end end @@ -229,7 +237,7 @@ require count >= 0 do - if verbose then + if is_verbose then if count > 0 then put_string(once "Total ") put_string(msg) @@ -340,7 +348,7 @@ end end -feature {ANY} -- To echo some warning or some problem (echo is done whathever the value of `verbose'). +feature {ANY} -- To echo some warning or some problem (echo is done whathever the value of `is_verbose'). w_put_string (msg: STRING) is do if output_path = Void then @@ -403,27 +411,37 @@ end end +feature {ANY} + is_redirected_on_dev_null: BOOLEAN is + do + Result := output_path /= Void and then output_path.is_empty + end + feature {COMPILE, SE} redirect_output_on_dev_null is require output_path = Void do - output_path := once "/dev/null" + output_path := once "" -- means /dev/null create {NULL_OUTPUT_STREAM} output_stream ensure - not output_path.is_emty + not output_path.is_empty end feature {ACE, COMMAND_LINE_TOOLS, SE} set_verbose is do - verbose := True + is_verbose := True + ensure + is_verbose end feature {ACE_CHECK} unset_verbose is do - verbose := False + is_verbose := False + ensure + not is_verbose end feature {} @@ -433,6 +451,10 @@ fz_smarteiffeldirectory: STRING is "SmartEiffelDirectory" +invariant + + output_stream /= Void + end -- class ECHO -- -- ------------------------------------------------------------------------------------------------------------------------------ Modified: trunk/tools/parser/eiffel_parser.e =================================================================== --- trunk/tools/parser/eiffel_parser.e 2005-12-22 11:46:08 UTC (rev 6747) +++ trunk/tools/parser/eiffel_parser.e 2005-12-23 10:46:28 UTC (rev 6748) @@ -274,7 +274,7 @@ local do_it: BOOLEAN do - if echo.verbose then + if echo.is_verbose then do_it := True elseif error_handler.no_warning then else Modified: trunk/tools/utils/command_line_tools.e =================================================================== --- trunk/tools/utils/command_line_tools.e 2005-12-22 11:46:08 UTC (rev 6747) +++ trunk/tools/utils/command_line_tools.e 2005-12-23 10:46:28 UTC (rev 6748) @@ -118,8 +118,13 @@ loop arg := argument(argi) if is_output_error_warning_on_flag(arg, argi) then - Result := argument(argi + 1) - argi := argument_count + 1 + if Result = Void then + Result := argument(argi + 1) + argi := argi + 2 + else + echo.w_put_string("Flag -is_output_error_warning_on must be used only once.%N") + system_tools.bad_use_exit(command_name, command_line_help_summary) + end else argi := argi + 1 end Modified: trunk/work/lib_test3/c_self_test_do_it =================================================================== --- trunk/work/lib_test3/c_self_test_do_it 2005-12-22 11:46:08 UTC (rev 6747) +++ trunk/work/lib_test3/c_self_test_do_it 2005-12-23 10:46:28 UTC (rev 6748) @@ -16,8 +16,8 @@ endif cp same_msg ../lib_test4/ -touch bad_.new -/bin/rm bad_*.new +touch bad_.tmp +/bin/rm bad_*.tmp foreach f (bad_*.e) if (${f} == "bad_inspect4.e") then echo "*** bad_inspect4.e *** SKIPPED *** TO DO ***" @@ -37,24 +37,24 @@ endif echo -n ${f} set bad=${f:r} - /bin/rm -f ${bad}.new - ${compile} ${bad} >& ${bad}.new + /bin/rm -f ${bad}.tmp + ${compile} ${bad} >& ${bad}.tmp echo -n "." if (!(-f ${bad}.msg)) then echo ${bad} is a new test echo Check manually the error message first: echo " " - echo " " less ${bad}.new + echo " " less ${bad}.tmp echo " " # exit 1 endif - ./same_msg ${bad}.msg ${bad}.new + ./same_msg ${bad}.msg ${bad}.tmp if ($status) then echo echo "Message ${bad} changed" # exit 1 else - /bin/rm -f ${bad}.new + /bin/rm -f ${bad}.tmp echo -n "." endif ${compile_to_c} ${bad} >& /dev/null Modified: trunk/work/tools/c_short_test.ok =================================================================== --- trunk/work/tools/c_short_test.ok 2005-12-22 11:46:08 UTC (rev 6747) +++ trunk/work/tools/c_short_test.ok 2005-12-23 10:46:28 UTC (rev 6748) @@ -1,56 +1,145 @@ -For lib/./io : -directory.e..... -file_tools.e..... -filter.e..... -filter_input_stream.e..... -filter_output_stream.e..... -input_stream.e..... -output_stream.e..... -standard_streams.e..... -stream.e..... -terminal_input_output_stream.e..... -terminal_input_stream.e..... -terminal_output_stream.e..... +For lib/./regular_expression : +regular_expression.e..... +regular_expression_builder.e..... ------------------ -For lib/./io/terminal : -binary_file_read.e..... -binary_file_write.e..... -file.e..... -null_input_stream.e..... -null_output_stream.e..... -simple_input_output_stream.e..... -string_input_stream.e..... -string_output_stream.e..... -text_file_read.e..... -text_file_read_write.e..... -text_file_write.e..... +For lib/./regular_expression/low_level : +backtracking_regular_expression.e..... +backtracking_regular_expression_builder.e..... +backtracking_regular_expression_pattern.e..... +perl5_regular_expression_builder.e..... +posix_regular_expression_builder.e..... ------------------ -For lib/./io/filter : -base64_input_stream.e..... -base64_output_stream.e..... -quoted_printable_input_stream.e..... -quoted_printable_output_stream.e..... +For lib/./regular_expression/internal : +regular_expression_item.e..... +regular_expression_string_scanner.e..... ------------------ -For lib/./io/low_level : -amiga_directory_notation.e..... -basic_directory.e..... -cygwin_directory_notation.e..... -directory_notation.e..... -directory_notation_handler.e..... -html_handler.e..... -input_stream_tools.e..... -macintosh_directory_notation.e..... -openvms_directory_notation.e..... -output_stream_tools.e..... -redirection_tools.e..... -std_error.e..... -std_input.e..... -std_input_output.e..... -std_output.e..... -stream_handler.e..... -unix_directory_notation.e..... -windows_directory_notation.e..... +For lib/./regular_expression/internal/regular_expression_items : +regular_expression_item_any.e..... +regular_expression_item_begin_group.e..... +regular_expression_item_begin_of_line.e..... +regular_expression_item_begin_of_text.e..... +regular_expression_item_begin_of_word.e..... +regular_expression_item_end_group.e..... +regular_expression_item_end_of_line.e..... +regular_expression_item_end_of_text.e..... +regular_expression_item_end_of_word.e..... +regular_expression_item_globals.e..... +regular_expression_item_is_posix_alnum.e..... +regular_expression_item_is_posix_alpha.e..... +regular_expression_item_is_posix_ascii.e..... +regular_expression_item_is_posix_blank.e..... +regular_expression_item_is_posix_cntrl.e..... +regular_expression_item_is_posix_digit.e..... +regular_expression_item_is_posix_graph.e..... +regular_expression_item_is_posix_lower.e..... +regular_expression_item_is_posix_print.e..... +regular_expression_item_is_posix_punct.e..... +regular_expression_item_is_posix_space.e..... +regular_expression_item_is_posix_upper.e..... +regular_expression_item_is_posix_word.e..... +regular_expression_item_is_posix_xdigit.e..... +regular_expression_item_look.e..... +regular_expression_item_look_end.e..... +regular_expression_item_not_end_of_line.e..... +regular_expression_item_not_then_any.e..... +regular_expression_item_previous_group.e..... +regular_expression_item_previous_group_no_case.e..... +regular_expression_item_range.e..... +regular_expression_item_single.e..... +regular_expression_item_single_no_case.e..... +regular_expression_item_text.e..... +regular_expression_item_text_no_case.e..... ------------------ +For lib/./random : +gen_rand.e..... +min_stand.e..... +std_rand.e..... +------------------ +For lib/./kernel : +any.e..... +arguments.e..... +bit_string.e..... +boolean.e..... +exceptions.e..... +function.e..... +hierarchic_graph_node.e..... +loaded_hierarchic_graph_node.e..... +memory.e..... +platform.e..... +pointer.e..... +predicate.e..... +procedure.e..... +reference.e..... +routine.e..... +safe_equal.e..... +system.e..... +tuple.e..... +weak_reference.e..... +------------------ +For lib/./kernel/internal : +internals.e..... +internals_handler.e..... +native_array_internals.e..... +typed_internals.e..... +------------------ +DIRECTORY lib/./scoop SKIPPED. NO TEST FOR SCOOP. +For lib/./backtracking : +backtracking.e..... +backtracking_node.e..... +------------------ +For lib/./backtracking/node : +backtracking_node_and_list.e..... +backtracking_node_and_pair.e..... +backtracking_node_binary.e..... +backtracking_node_cut.e..... +backtracking_node_cut_and_false.e..... +backtracking_node_false.e..... +backtracking_node_globals.e..... +backtracking_node_list.e..... +backtracking_node_not.e..... +backtracking_node_or_list.e..... +backtracking_node_or_pair.e..... +backtracking_node_or_true.e..... +backtracking_node_true.e..... +backtracking_node_true_or.e..... +backtracking_node_unary.e..... +backtracking_node_under_cut_point.e..... +------------------ +For lib/./backtracking/low_level : +abstract_backtracking.e..... +abstract_backtracking_alternative.e..... +abstract_backtracking_cut_point.e..... +abstract_backtracking_sequence.e..... +backtracking_alternative.e..... +backtracking_alternative_list.e..... +backtracking_sequence.e..... +backtracking_sequence_list.e..... +------------------ +For lib/./backtracking/internal : +abstract_backtracking_globals.e..... +abstract_backtracking_pool.e..... +abstract_backtracking_pool_of_cut_point.e..... +abstract_backtracking_poolable.e..... +backtracking_globals.e..... +backtracking_pool_of_alternative.e..... +backtracking_pool_of_alternative_list.e..... +backtracking_pool_of_sequence.e..... +backtracking_pool_of_sequence_list.e..... +------------------ +For lib/./exec : +process.e..... +------------------ +For lib/./exec/low_level : +exec_input_stream.e..... +exec_output_stream.e..... +exec_stream.e..... +------------------ +For lib/./sorting : +abstract_sorter.e..... +collection_sorter.e..... +comparator_collection_sorter.e..... +reverse_collection_sorter.e..... +------------------ For lib/./net : access.e..... address.e..... @@ -58,22 +147,16 @@ socket_input_output_stream.e..... socket_server_job.e..... ------------------ -For lib/./net/servers : -connection.e..... -server.e..... ------------------- -For lib/./net/servers/http : -http_connection.e..... -http_get_handler.e..... -http_method_handler.e..... -http_no_method_handler.e..... -http_server.e..... ------------------- For lib/./net/access : local_access.e..... tcp_access.e..... udp_access.e..... ------------------ +For lib/./net/address : +host.e..... +ip_address.e..... +localhost.e..... +------------------ For lib/./net/low_level : client_socket_input_output_stream.e..... server_socket_input_output_stream.e..... @@ -82,35 +165,57 @@ socket_plug_in.e..... socket_server.e..... ------------------ -For lib/./net/address : -host.e..... -ip_address.e..... -localhost.e..... +For lib/./net/servers : +connection.e..... +server.e..... ------------------ -For lib/./xml : -xml_callbacks.e..... -xml_node.e..... -xml_parser.e..... -xml_tree.e..... +For lib/./net/servers/http : +http_connection.e..... +http_get_handler.e..... +http_method_handler.e..... +http_no_method_handler.e..... +http_server.e..... ------------------ -For lib/./exec : -process.e..... +For lib/./unicode : +unicode_string_handler.e..... +utf8_parser.e..... ------------------ -For lib/./exec/low_level : -exec_input_stream.e..... -exec_output_stream.e..... -exec_stream.e..... +For lib/./iterator : +iterator.e..... ------------------ -For lib/./html : -html_element.e..... -html_output_stream.e..... -html_parser.e..... +For lib/./iterator/internal : +iterator_on_bijective_dictionary_items.e..... +iterator_on_bijective_dictionary_keys.e..... +iterator_on_bit_string.e..... +iterator_on_collection.e..... +iterator_on_dictionary_items.e..... +iterator_on_dictionary_keys.e..... +iterator_on_linked_list.e..... +iterator_on_set.e..... +iterator_on_string.e..... +iterator_on_two_way_linked_list.e..... +iterator_on_unicode_string.e..... ------------------ -For lib/./html/internal : -html_attribute.e..... -html_node.e..... -html_text.e..... +For lib/./design_patterns : +chain_handler.e..... +chain_of_responsibility.e..... +command.e..... +factory.e..... +macro_command.e..... +observer.e..... +undoable_command.e..... +visitor.e..... ------------------ +For lib/./sequencer : +background_job.e..... +job.e..... +loop_item.e..... +loop_stack.e..... +periodic_job.e..... +ready_description.e..... +simple_background_job.e..... +simple_periodic_job.e..... +------------------ For lib/./misc : counter.e..... eiffeltest_tools.e..... @@ -132,23 +237,49 @@ time_in_italian.e..... time_in_spanish.e..... ------------------ -For lib/./sequencer : -background_job.e..... -job.e..... -loop_item.e..... -loop_stack.e..... -periodic_job.e..... -ready_description.e..... -simple_background_job.e..... -simple_periodic_job.e..... +For lib/./xml : +xml_callbacks.e..... +xml_node.e..... +xml_parser.e..... +xml_tree.e..... ------------------ -DIRECTORY lib/./scoop SKIPPED. NO TEST FOR SCOOP. -For lib/./sorting : -abstract_sorter.e..... -collection_sorter.e..... -comparator_collection_sorter.e..... -reverse_collection_sorter.e..... +For lib/./numeric : +integer.e..... +integer_16.e..... +integer_32.e..... +integer_64.e..... +integer_8.e..... +integer_general.e..... +math_constants.e..... +mutable_big_integer.e..... +number.e..... +number_tools.e..... +numeric.e..... +real.e..... +real_128.e..... +real_32.e..... +real_64.e..... +real_80.e..... +real_extended.e..... +real_general.e..... ------------------ +For lib/./numeric/internal : +big_integer_number.e..... +fraction_general_number.e..... +fraction_with_big_integer_number.e..... +integer_64_number.e..... +integer_general_number.e..... +------------------ +For lib/./html : +html_element.e..... +html_output_stream.e..... +html_parser.e..... +------------------ +For lib/./html/internal : +html_attribute.e..... +html_node.e..... +html_text.e..... +------------------ For lib/./storage : bijective_dictionary.e..... collection.e..... @@ -162,40 +293,34 @@ simple_dictionary.e..... stack.e..... ------------------ -For lib/./storage/set : -avl_set.e..... -hashed_set.e..... +For lib/./storage/repository : +xml_repository.e..... ------------------ +For lib/./storage/low_level : +native_array.e..... +------------------ +For lib/./storage/bijective_dictionary : +bijective_dictionary_reverser.e..... +hashed_bijective_dictionary.e..... +------------------ For lib/./storage/collection : array.e..... +dictionary_key_traverser.e..... fast_array.e..... linked_list.e..... ring_array.e..... two_way_linked_list.e..... ------------------ -For lib/./storage/repository : -xml_repository.e..... +For lib/./storage/set : +avl_set.e..... +hashed_set.e..... ------------------ -For lib/./storage/collection2 : -array2.e..... -fast_array2.e..... ------------------- -For lib/./storage/collection3 : -array3.e..... -fast_array3.e..... ------------------- -For lib/./storage/low_level : -native_array.e..... ------------------- For lib/./storage/dictionary : avl_dictionary.e..... double_avl_dictionary.e..... double_hashed_dictionary.e..... hashed_dictionary.e..... ------------------ -For lib/./storage/bijective_dictionary : -hashed_bijective_dictionary.e..... ------------------- For lib/./storage/internal : any_avl_dictionary_node.e..... any_avl_set_node.e..... @@ -219,58 +344,14 @@ two_way_linked_list_node.e..... xml_repository_layout.e..... ------------------ -For lib/./design_patterns : -chain_handler.e..... -chain_of_responsibility.e..... -command.e..... -factory.e..... -macro_command.e..... -observer.e..... -undoable_command.e..... -visitor.e..... +For lib/./storage/collection2 : +array2.e..... +fast_array2.e..... ------------------ -For lib/./kernel : -any.e..... -arguments.e..... -bit_string.e..... -boolean.e..... -exceptions.e..... -function.e..... -hierarchic_graph_node.e..... -loaded_hierarchic_graph_node.e..... -memory.e..... -platform.e..... -pointer.e..... -predicate.e..... -procedure.e..... -reference.e..... -routine.e..... -safe_equal.e..... -system.e..... -tuple.e..... -weak_reference.e..... +For lib/./storage/collection3 : +array3.e..... +fast_array3.e..... ------------------ -For lib/./kernel/internal : -internals.e..... -internals_handler.e..... -native_array_internals.e..... -typed_internals.e..... ------------------- -For lib/./random : -gen_rand.e..... -min_stand.e..... -std_rand.e..... ------------------- -For lib/./unicode : -unicode_string_handler.e..... -utf8_parser.e..... ------------------- -For lib/./signal : -signal_0.e..... -signal_1.e..... -signal_2.e..... -signal_4.e..... ------------------- For lib/./abilities : comparable.e..... disposable.e..... @@ -289,22 +370,59 @@ For lib/./string/low_level : string_handler.e..... ------------------ -For lib/./iterator : -iterator.e..... +For lib/./io : +directory.e..... +file_tools.e..... +filter.e..... +filter_input_stream.e..... +filter_output_stream.e..... +input_stream.e..... +output_stream.e..... +standard_streams.e..... +stream.e..... +terminal_input_output_stream.e..... +terminal_input_stream.e..... +terminal_output_stream.e..... ------------------ -For lib/./iterator/internal : -iterator_on_bijective_dictionary_items.e..... -iterator_on_bijective_dictionary_keys.e..... -iterator_on_bit_string.e..... -iterator_on_collection.e..... -iterator_on_dictionary_items.e..... -iterator_on_dictionary_keys.e..... -iterator_on_linked_list.e..... -iterator_on_set.e..... -iterator_on_string.e..... -iterator_on_two_way_linked_list.e..... -iterator_on_unicode_string.e..... +For lib/./io/filter : +base64_input_stream.e..... +base64_output_stream.e..... +quoted_printable_input_stream.e..... +quoted_printable_output_stream.e..... ------------------ +For lib/./io/low_level : +amiga_directory_notation.e..... +basic_directory.e..... +cygwin_directory_notation.e..... +directory_notation.e..... +directory_notation_handler.e..... +html_handler.e..... +input_stream_tools.e..... +macintosh_directory_notation.e..... +openvms_directory_notation.e..... +output_stream_tools.e..... +redirection_tools.e..... +std_error.e..... +std_input.e..... +std_input_output.e..... +std_output.e..... +stream_handler.e..... +unix_directory_notation.e..... +windows_directory_notation.e..... +------------------ +For lib/./io/terminal : +binary_file_read.e..... +binary_file_write.e..... +file.e..... +null_input_stream.e..... +null_output_stream.e..... +simple_input_output_stream.e..... +string_input_stream.e..... +string_output_stream.e..... +text_file_read.e..... +text_file_read_write.e..... +text_file_write.e..... +------------------ For lib/./vision : alignable.e..... alignment.e..... @@ -344,11 +462,6 @@ vision_loop_stack.e..... widget.e..... ------------------ -For lib/./vision/color : -color.e..... -color_list.e..... -full_color_list.e..... ------------------- For lib/./vision/layouts : button_space.e..... check_space.e..... @@ -358,12 +471,6 @@ row_layout.e..... scroll_layout.e..... ------------------ -For lib/./vision/button : -button.e..... -check_button.e..... -repeat_button.e..... -repeat_job.e..... ------------------- For lib/./vision/events : pointer_status.e..... when_close_requested.e..... @@ -392,6 +499,25 @@ when_wheel_down.e..... when_wheel_up.e..... ------------------ +For lib/./vision/window : +fullscreen_window.e..... +list_window.e..... +root_window.e..... +scroll_view.e..... +sub_window.e..... +toplevel_window.e..... +window.e..... +------------------ +For lib/./vision/color : +color.e..... +color_list.e..... +full_color_list.e..... +------------------ +For lib/./vision/render : +basic_renderer.e..... +default_renderer.e..... +renderer.e..... +------------------ For lib/./vision/opengl : gl.e..... gl_color.e..... @@ -426,148 +552,24 @@ xml_object_loader.e..... xml_world_loader.e..... ------------------ -For lib/./vision/render : -basic_renderer.e..... -default_renderer.e..... -renderer.e..... ------------------- -For lib/./vision/window : -fullscreen_window.e..... -list_window.e..... -root_window.e..... -scroll_view.e..... -sub_window.e..... -toplevel_window.e..... -window.e..... ------------------- For lib/./vision/decoration : arc.e..... decoration.e..... decorator.e..... point.e..... ------------------ -For lib/./numeric : -integer.e..... -integer_16.e..... -integer_32.e..... -integer_64.e..... -integer_8.e..... -integer_general.e..... -math_constants.e..... -mutable_big_integer.e..... -number.e..... -number_tools.e..... -numeric.e..... -real.e..... -real_128.e..... -real_32.e..... -real_64.e..... -real_80.e..... -real_extended.e..... -real_general.e..... +For lib/./vision/button : +button.e..... +check_button.e..... +repeat_button.e..... +repeat_job.e..... ------------------ -For lib/./numeric/internal : -big_integer_number.e..... -fraction_general_number.e..... -fraction_with_big_integer_number.e..... -integer_64_number.e..... -integer_general_number.e..... +For lib/./signal : +signal_0.e..... +signal_1.e..... +signal_2.e..... +signal_4.e..... ------------------ -For lib/./regular_expression : -regular_expression.e..... -regular_expression_builder.e..... ------------------- -For lib/./regular_expression/low_level : -backtracking_regular_expression.e..... -backtracking_regular_expression_builder.e..... -backtracking_regular_expression_pattern.e..... -perl5_regular_expression_builder.e..... -posix_regular_expression_builder.e..... ------------------- -For lib/./regular_expression/internal : -regular_expression_item.e..... -regular_expression_string_scanner.e..... ------------------- -For lib/./regular_expression/internal/regular_expression_items : -regular_expression_item_any.e..... -regular_expression_item_begin_group.e..... -regular_expression_item_begin_of_line.e..... -regular_expression_item_begin_of_text.e..... -regular_expression_item_begin_of_word.e..... -regular_expression_item_end_group.e..... -regular_expression_item_end_of_line.e..... -regular_expression_item_end_of_text.e..... -regular_expression_item_end_of_word.e..... -regular_expression_item_globals.e..... -regular_expression_item_is_posix_alnum.e..... -regular_expression_item_is_posix_alpha.e..... -regular_expression_item_is_posix_ascii.e..... -regular_expression_item_is_posix_blank.e..... -regular_expression_item_is_posix_cntrl.e..... -regular_expression_item_is_posix_digit.e..... -regular_expression_item_is_posix_graph.e..... -regular_expression_item_is_posix_lower.e..... -regular_expression_item_is_posix_print.e..... -regular_expression_item_is_posix_punct.e..... -regular_expression_item_is_posix_space.e..... -regular_expression_item_is_posix_upper.e..... -regular_expression_item_is_posix_word.e..... -regular_expression_item_is_posix_xdigit.e..... -regular_expression_item_look.e..... -regular_expression_item_look_end.e..... -regular_expression_item_not_end_of_line.e..... -regular_expression_item_not_then_any.e..... -regular_expression_item_previous_group.e..... -regular_expression_item_previous_group_no_case.e..... -regular_expression_item_range.e..... -regular_expression_item_single.e..... -regular_expression_item_single_no_case.e..... -regular_expression_item_text.e..... -regular_expression_item_text_no_case.e..... ------------------- -For lib/./backtracking : -backtracking.e..... -backtracking_node.e..... ------------------- -For lib/./backtracking/node : -backtracking_node_and_list.e..... -backtracking_node_and_pair.e..... -backtracking_node_binary.e..... -backtracking_node_cut.e..... From colnet at users.gforge.inria.fr Fri Dec 23 17:24:31 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Fri, 23 Dec 2005 16:24:31 +0000 Subject: [Smarteiffel-commits] r6749 - in trunk/tools Message-ID: <20051223_162431_053165. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-23 16:24:30 +0000 (Fri, 23 Dec 2005) New Revision: 6749 Modified: trunk/tools/commands/se.e trunk/tools/kernel/echo.e trunk/tools/utils/command_line_tools.e Log: I am still not able to redirect correctly things like: se -version -output_error_warning_on foo.msg hello_world But all ordinary redirection actually do work. Don't know how to do... as it is not important, I don't know if it is worth to fix that? Modified: trunk/tools/commands/se.e =================================================================== --- trunk/tools/commands/se.e 2005-12-23 10:46:28 UTC (rev 6748) +++ trunk/tools/commands/se.e 2005-12-23 16:24:30 UTC (rev 6749) @@ -179,10 +179,10 @@ plugin_name: STRING do plugin_name := command_name - std_output.put_character('%N') - std_output.put_string(plugin_name) - std_output.put_spaces(command_name_length - plugin_name.count + 1) - std_output.put_string(smart_eiffel.release_number) + echo.put_character('%N') + echo.put_string(plugin_name) + echo.put_spaces(command_name_length - plugin_name.count + 1) + echo.put_string(smart_eiffel.release_number) arg := {FAST_ARRAY[STRING]<<"-version">>} -- We use an environment variable rather than a new argument -- (e.g. -short_version) so that a recent "se" degrades @@ -194,9 +194,9 @@ i > plugins.upper loop plugin_name := plugins.item(i) - std_output.put_string(plugin_name) - std_output.put_spaces(command_name_length - plugin_name.count + 1) - std_output.flush + echo.put_string(plugin_name) + echo.put_spaces(command_name_length - plugin_name.count + 1) + echo.flush status := do_plugin_call(plugin_commands.item(i), arg) -- Do something if status /= 0 ? i := i + 1 @@ -277,9 +277,9 @@ until process.output.end_of_input loop - std_output.put_string(process.output.last_string) - std_output.put_new_line - std_output.flush + echo.put_string(process.output.last_string) + echo.put_new_line + echo.flush process.output.read_line end end @@ -289,9 +289,9 @@ until process.error.end_of_input loop - std_error.put_string(process.error.last_string) - std_error.put_new_line - std_error.flush + echo.w_put_string(process.error.last_string) + echo.w_put_new_line + echo.flush process.error.read_line end end Modified: trunk/tools/kernel/echo.e =================================================================== --- trunk/tools/kernel/echo.e 2005-12-23 10:46:28 UTC (rev 6748) +++ trunk/tools/kernel/echo.e 2005-12-23 16:24:30 UTC (rev 6749) @@ -105,6 +105,22 @@ end end + put_spaces (n: INTEGER) is + require + n >= 0 + local + i: INTEGER + do + from + i := n + until + i = 0 + loop + put_character(' ') + i := i - 1 + end + end + file_removing (path: STRING) is -- If `path' is an existing file, echo a message on `output_stream' -- while removing the file. Otherwise, do nothing. @@ -348,7 +364,7 @@ end end -feature {ANY} -- To echo some warning or some problem (echo is done whathever the value of `is_verbose'). +feature {ANY} -- To echo warnings or error messages (echoing whatever `is_verbose' status). w_put_string (msg: STRING) is do if output_path = Void then @@ -382,6 +398,33 @@ end end + w_put_spaces (n: INTEGER) is + require + n >= 0 + local + i: INTEGER + do + from + i := n + until + i = 0 + loop + w_put_character(' ') + i := i - 1 + end + end + + w_put_new_line is + do + if output_path = Void then + std_error.put_new_line + std_error.flush + else + output_stream.put_new_line + output_stream.flush + end + end + feature {} output_path: STRING -- Non Void indicates that `echo' is redirected. @@ -436,6 +479,14 @@ is_verbose end +feature {COMMAND_LINE_TOOLS} + set_verbose_with (v: BOOLEAN) is + do + is_verbose := v + ensure + is_verbose = v + end + feature {ACE_CHECK} unset_verbose is do Modified: trunk/tools/utils/command_line_tools.e =================================================================== --- trunk/tools/utils/command_line_tools.e 2005-12-23 10:46:28 UTC (rev 6748) +++ trunk/tools/utils/command_line_tools.e 2005-12-23 16:24:30 UTC (rev 6749) @@ -81,10 +81,15 @@ is_help_flag (flag: STRING): BOOLEAN is -- Is it like some traditional help `flag'? + local + echo_verbose_status_save: BOOLEAN do if flag_match(fz_help, flag) or else flag_match(once "h", flag) or else (once "?").is_equal(flag) then if not help_flag then - std_output.put_string(command_line_help_summary) + echo_verbose_status_save := echo.is_verbose + echo.set_verbose + echo.put_string(command_line_help_summary) + echo.set_verbose_with(echo_verbose_status_save) end inspect argument_count @@ -109,7 +114,7 @@ -- early as possible (should be called first when the command accept this flag). -- A non Void `Result' indicates the redirection path. local - argi: INTEGER; arg: STRING + argi: INTEGER; arg: STRING; file_tools: FILE_TOOLS do from argi := 1 @@ -121,9 +126,29 @@ if Result = Void then Result := argument(argi + 1) argi := argi + 2 + if file_tools.file_exists(Result) then + file_tools.delete(Result) + if file_tools.file_exists(Result) then + echo.w_put_string("Unable to remove existing file %"") + echo.w_put_string(Result) + echo.w_put_string("%". (File of -is_output_error_warning_on flag.)%N") + die_with_code(exit_failure_code) + end + end else - echo.w_put_string("Flag -is_output_error_warning_on must be used only once.%N") - system_tools.bad_use_exit(command_name, command_line_help_summary) + echo.w_put_string("Flag -is_output_error_warning_on must be used only once.%NYour command was:%N") + from + echo.w_put_string(argument(0)) + argi := 1 + until + argi > argument_count + loop + echo.w_put_character(' ') + echo.w_put_string(argument(argi)) + argi := argi + 1 + end + echo.w_put_character('%N') + die_with_code(exit_failure_code) end else argi := argi + 1 @@ -246,8 +271,8 @@ is_case_insensitive_flag (flag: STRING): BOOLEAN is do if flag_match(fz_case_insensitive, flag) then - std_output.put_string(command_name) - std_output.put_string(once ": the %"-case_insensitive%" flag is no longer supported.%N") + echo.w_put_string(command_name) + echo.w_put_string(once ": the %"-case_insensitive%" flag is no longer supported.%N") Result := True end end @@ -274,8 +299,8 @@ Result := True end if flag_match(fz_trace, flag) then - std_output.put_string(command_name) - std_output.put_string(once ": the new name of the %"-trace%" flag is now %"-sedb%".%N") + echo.w_put_string(command_name) + echo.w_put_string(once ": the new name of the %"-trace%" flag is now %"-sedb%".%N") Result := True end if Result then @@ -317,20 +342,24 @@ end is_version_flag_no_exit (flag: STRING): BOOLEAN is + local + echo_verbose_status_save: BOOLEAN do if flag_match(fz_version, flag) or else flag_match(once "v", flag) then if not version_flag then - -- We use an environment variable rather than a new argument - -- (e.g. -short_version) so that a recent "se" degrades - -- gracefully when used with an old plugin. + echo_verbose_status_save := echo.is_verbose + echo.set_verbose + -- We use an environment variable rather than a new argument (e.g. -short_version) so that a + -- recent "se" degrades gracefully when used with an old plugin. if (create {SYSTEM}).get_environment_variable("SMART_EIFFEL_SHORT_VERSION") /= Void then - std_output.put_string(smart_eiffel.release_number) + echo.put_string(smart_eiffel.release_number) else - std_output.put_string(once "Version of command %"") - std_output.put_string(command_name) - std_output.put_string(once "%" is:%N") - std_output.put_string(smart_eiffel.copyright) + echo.put_string(once "Version of command %"") + echo.put_string(command_name) + echo.put_string(once "%" is:%N") + echo.put_string(smart_eiffel.copyright) end + echo.set_verbose_with(echo_verbose_status_save) end version_flag := True Result := True From colnet at users.gforge.inria.fr Fri Dec 23 18:03:34 2005 From: colnet at users.gforge.inria.fr (colnet at users.gforge.inria.fr) Date: Fri, 23 Dec 2005 17:03:34 +0000 Subject: [Smarteiffel-commits] r6750 - trunk/work/lib_test3 Message-ID: <20051223_170334_063182. colnet@users.gforge.inria.fr> Author: colnet Date: 2005-12-23 17:03:28 +0000 (Fri, 23 Dec 2005) New Revision: 6750 Modified: trunk/work/lib_test3/bad_address_of1.msg trunk/work/lib_test3/bad_address_of2.msg trunk/work/lib_test3/bad_address_of3.msg trunk/work/lib_test3/bad_agent01.msg trunk/work/lib_test3/bad_agent02.msg trunk/work/lib_test3/bad_agent03.msg trunk/work/lib_test3/bad_agent04.msg trunk/work/lib_test3/bad_agent05.msg trunk/work/lib_test3/bad_agent06.msg trunk/work/lib_test3/bad_agent07.msg trunk/work/lib_test3/bad_agent08.msg trunk/work/lib_test3/bad_agent09.msg trunk/work/lib_test3/bad_agent11.msg trunk/work/lib_test3/bad_agent13.msg trunk/work/lib_test3/bad_agent14.msg trunk/work/lib_test3/bad_agent15.msg trunk/work/lib_test3/bad_agent16.msg trunk/work/lib_test3/bad_agent17.msg trunk/work/lib_test3/bad_agent18.msg trunk/work/lib_test3/bad_argument_list1.msg trunk/work/lib_test3/bad_array1.msg trunk/work/lib_test3/bad_assertion1.msg trunk/work/lib_test3/bad_assertion2.msg trunk/work/lib_test3/bad_assignment1.msg trunk/work/lib_test3/bad_assignment10.msg trunk/work/lib_test3/bad_assignment11.msg trunk/work/lib_test3/bad_assignment12.msg trunk/work/lib_test3/bad_assignment13.msg trunk/work/lib_test3/bad_assignment14.msg trunk/work/lib_test3/bad_assignment15.msg trunk/work/lib_test3/bad_assignment16.msg trunk/work/lib_test3/bad_assignment17.msg trunk/work/lib_test3/bad_assignment18.msg trunk/work/lib_test3/bad_assignment19.msg trunk/work/lib_test3/bad_assignment2.msg trunk/work/lib_test3/bad_assignment20.msg trunk/work/lib_test3/bad_assignment21.msg trunk/work/lib_test3/bad_assignment22.msg trunk/work/lib_test3/bad_assignment23.msg trunk/work/lib_test3/bad_assignment24.msg trunk/work/lib_test3/bad_assignment25.msg trunk/work/lib_test3/bad_assignment26.msg trunk/work/lib_test3/bad_assignment3.msg trunk/work/lib_test3/bad_assignment4.msg trunk/work/lib_test3/bad_assignment5.msg trunk/work/lib_test3/bad_assignment6.msg trunk/work/lib_test3/bad_assignment7.msg trunk/work/lib_test3/bad_assignment8.msg trunk/work/lib_test3/bad_assignment9.msg trunk/work/lib_test3/bad_assignment_attempt1.msg trunk/work/lib_test3/bad_assignment_force01.msg trunk/work/lib_test3/bad_assignment_test01.msg trunk/work/lib_test3/bad_attribute1.msg trunk/work/lib_test3/bad_bit1.msg trunk/work/lib_test3/bad_bit2.msg trunk/work/lib_test3/bad_c_array1.msg trunk/work/lib_test3/bad_c_inline_c.msg trunk/work/lib_test3/bad_call1.msg trunk/work/lib_test3/bad_call2.msg trunk/work/lib_test3/bad_call3.msg trunk/work/lib_test3/bad_call4.msg trunk/work/lib_test3/bad_call5.msg trunk/work/lib_test3/bad_call6.msg trunk/work/lib_test3/bad_call7.msg trunk/work/lib_test3/bad_call8.msg trunk/work/lib_test3/bad_character1.msg trunk/work/lib_test3/bad_character2.msg trunk/work/lib_test3/bad_class1.msg trunk/work/lib_test3/bad_class2.msg trunk/work/lib_test3/bad_class3.msg trunk/work/lib_test3/bad_class4.msg trunk/work/lib_test3/bad_class5.msg trunk/work/lib_test3/bad_colon.msg trunk/work/lib_test3/bad_constant1.msg trunk/work/lib_test3/bad_constant2.msg trunk/work/lib_test3/bad_constant3.msg trunk/work/lib_test3/bad_constant4.msg trunk/work/lib_test3/bad_constant5.msg trunk/work/lib_test3/bad_constant6.msg trunk/work/lib_test3/bad_constraint1.msg trunk/work/lib_test3/bad_constraint2.msg trunk/work/lib_test3/bad_constraint3.msg trunk/work/lib_test3/bad_constraint4.msg trunk/work/lib_test3/bad_copy1.msg trunk/work/lib_test3/bad_create1.msg trunk/work/lib_test3/bad_create2.msg trunk/work/lib_test3/bad_create3.msg trunk/work/lib_test3/bad_create4.msg trunk/work/lib_test3/bad_create5.msg trunk/work/lib_test3/bad_create6.msg trunk/work/lib_test3/bad_create7.msg trunk/work/lib_test3/bad_create8.msg trunk/work/lib_test3/bad_create_dictionary1.msg trunk/work/lib_test3/bad_create_dictionary2.msg trunk/work/lib_test3/bad_creation1.msg trunk/work/lib_test3/bad_creation2.msg trunk/work/lib_test3/bad_creation3.msg trunk/work/lib_test3/bad_creation4.msg trunk/work/lib_test3/bad_creation5.msg trunk/work/lib_test3/bad_creation6.msg trunk/work/lib_test3/bad_deferred1.msg trunk/work/lib_test3/bad_deferred3.msg trunk/work/lib_test3/bad_empty_file1.msg trunk/work/lib_test3/bad_empty_file2.msg trunk/work/lib_test3/bad_ensure1.msg trunk/work/lib_test3/bad_ensure2.msg trunk/work/lib_test3/bad_ensure3.msg trunk/work/lib_test3/bad_eq1.msg trunk/work/lib_test3/bad_eq2.msg trunk/work/lib_test3/bad_eq3.msg trunk/work/lib_test3/bad_eq4.msg trunk/work/lib_test3/bad_eq5.msg trunk/work/lib_test3/bad_expanded1.msg trunk/work/lib_test3/bad_expanded2.msg trunk/work/lib_test3/bad_expanded3.msg trunk/work/lib_test3/bad_export1.msg trunk/work/lib_test3/bad_export2.msg trunk/work/lib_test3/bad_export3.msg trunk/work/lib_test3/bad_export4.msg trunk/work/lib_test3/bad_export5.msg trunk/work/lib_test3/bad_export6.msg trunk/work/lib_test3/bad_export7.msg trunk/work/lib_test3/bad_export8.msg trunk/work/lib_test3/bad_export9.msg trunk/work/lib_test3/bad_external_c1.msg trunk/work/lib_test3/bad_feature1.msg trunk/work/lib_test3/bad_feature2.msg trunk/work/lib_test3/bad_feature3.msg trunk/work/lib_test3/bad_feature4.msg trunk/work/lib_test3/bad_feature5.msg trunk/work/lib_test3/bad_feature6.msg trunk/work/lib_test3/bad_feature7.msg trunk/work/lib_test3/bad_feature8.msg trunk/work/lib_test3/bad_feature9.msg trunk/work/lib_test3/bad_feature_name_list1.msg trunk/work/lib_test3/bad_filename1.msg trunk/work/lib_test3/bad_filename2.msg trunk/work/lib_test3/bad_free_operator1.msg trunk/work/lib_test3/bad_free_operator2.msg trunk/work/lib_test3/bad_free_operator3.msg trunk/work/lib_test3/bad_free_operator4.msg trunk/work/lib_test3/bad_free_operator5.msg trunk/work/lib_test3/bad_function1.msg trunk/work/lib_test3/bad_generic1.msg trunk/work/lib_test3/bad_generic10.msg trunk/work/lib_test3/bad_generic2.msg trunk/work/lib_test3/bad_generic3.msg trunk/work/lib_test3/bad_generic4.msg trunk/work/lib_test3/bad_generic5.msg trunk/work/lib_test3/bad_generic6.msg trunk/work/lib_test3/bad_generic7.msg trunk/work/lib_test3/bad_generic8.msg trunk/work/lib_test3/bad_generic9.msg trunk/work/lib_test3/bad_hash_code1.msg trunk/work/lib_test3/bad_hexadecimal1.msg trunk/work/lib_test3/bad_hexadecimal2.msg trunk/work/lib_test3/bad_identifier1.msg trunk/work/lib_test3/bad_if1.msg trunk/work/lib_test3/bad_if2.msg trunk/work/lib_test3/bad_inherit1.msg trunk/work/lib_test3/bad_inherit10.msg trunk/work/lib_test3/bad_inherit11.msg trunk/work/lib_test3/bad_inherit12.msg trunk/work/lib_test3/bad_inherit13.msg trunk/work/lib_test3/bad_inherit14.msg trunk/work/lib_test3/bad_inherit15.msg trunk/work/lib_test3/bad_inherit16.msg trunk/work/lib_test3/bad_inherit17.msg trunk/work/lib_test3/bad_inherit18.msg trunk/work/lib_test3/bad_inherit2.msg trunk/work/lib_test3/bad_inherit3.msg trunk/work/lib_test3/bad_inherit4.msg trunk/work/lib_test3/bad_inherit5.msg trunk/work/lib_test3/bad_inherit6.msg trunk/work/lib_test3/bad_inherit7.msg trunk/work/lib_test3/bad_inherit8.msg trunk/work/lib_test3/bad_inherit9.msg trunk/work/lib_test3/bad_insert1.msg trunk/work/lib_test3/bad_inspect1.msg trunk/work/lib_test3/bad_inspect10.msg trunk/work/lib_test3/bad_inspect2.msg trunk/work/lib_test3/bad_inspect3.msg trunk/work/lib_test3/bad_inspect5.msg trunk/work/lib_test3/bad_inspect6.msg trunk/work/lib_test3/bad_inspect7.msg trunk/work/lib_test3/bad_inspect8.msg trunk/work/lib_test3/bad_inspect9.msg trunk/work/lib_test3/bad_integer1.msg trunk/work/lib_test3/bad_integer2.msg trunk/work/lib_test3/bad_integer_constant1.msg trunk/work/lib_test3/bad_integer_constant10.msg trunk/work/lib_test3/bad_integer_constant11.msg trunk/work/lib_test3/bad_integer_constant12.msg trunk/work/lib_test3/bad_integer_constant13.msg trunk/work/lib_test3/bad_integer_constant14.msg trunk/work/lib_test3/bad_integer_constant15.msg trunk/work/lib_test3/bad_integer_constant2.msg trunk/work/lib_test3/bad_integer_constant3.msg trunk/work/lib_test3/bad_integer_constant4.msg trunk/work/lib_test3/bad_integer_constant5.msg trunk/work/lib_test3/bad_integer_constant6.msg trunk/work/lib_test3/bad_integer_constant7.msg trunk/work/lib_test3/bad_integer_constant8.msg trunk/work/lib_test3/bad_integer_constant9.msg trunk/work/lib_test3/bad_jw01.msg trunk/work/lib_test3/bad_jw02.msg trunk/work/lib_test3/bad_keyword1.msg trunk/work/lib_test3/bad_keyword2.msg trunk/work/lib_test3/bad_like1.msg trunk/work/lib_test3/bad_like10.msg trunk/work/lib_test3/bad_like11.msg trunk/work/lib_test3/bad_like12.msg trunk/work/lib_test3/bad_like13.msg trunk/work/lib_test3/bad_like14.msg trunk/work/lib_test3/bad_like2.msg trunk/work/lib_test3/bad_like3.msg trunk/work/lib_test3/bad_like4.msg trunk/work/lib_test3/bad_like5.msg trunk/work/lib_test3/bad_like6.msg trunk/work/lib_test3/bad_like7.msg trunk/work/lib_test3/bad_like8.msg trunk/work/lib_test3/bad_like9.msg trunk/work/lib_test3/bad_local_list1.msg trunk/work/lib_test3/bad_local_list2.msg trunk/work/lib_test3/bad_local_list3.msg trunk/work/lib_test3/bad_local_list4.msg trunk/work/lib_test3/bad_loop1.msg trunk/work/lib_test3/bad_loop2.msg trunk/work/lib_test3/bad_manifest_array1.msg trunk/work/lib_test3/bad_manifest_generic1.msg trunk/work/lib_test3/bad_manifest_generic2.msg trunk/work/lib_test3/bad_name1.msg trunk/work/lib_test3/bad_name2.msg trunk/work/lib_test3/bad_name3.msg trunk/work/lib_test3/bad_native_array1.msg trunk/work/lib_test3/bad_old1.msg trunk/work/lib_test3/bad_old2.msg trunk/work/lib_test3/bad_plug_in1.msg trunk/work/lib_test3/bad_plug_in2.msg trunk/work/lib_test3/bad_precursor01.msg trunk/work/lib_test3/bad_precursor02.msg trunk/work/lib_test3/bad_precursor03.msg trunk/work/lib_test3/bad_precursor04.msg trunk/work/lib_test3/bad_precursor05.msg trunk/work/lib_test3/bad_precursor06.msg trunk/work/lib_test3/bad_precursor07.msg trunk/work/lib_test3/bad_precursor08.msg trunk/work/lib_test3/bad_precursor09.msg trunk/work/lib_test3/bad_precursor10.msg trunk/work/lib_test3/bad_precursor11.msg trunk/work/lib_test3/bad_precursor12.msg trunk/work/lib_test3/bad_prefix_minus1.msg trunk/work/lib_test3/bad_procedure1.msg trunk/work/lib_test3/bad_real1.msg trunk/work/lib_test3/bad_real2.msg trunk/work/lib_test3/bad_real3.msg trunk/work/lib_test3/bad_redefine1.msg trunk/work/lib_test3/bad_redefine11.msg trunk/work/lib_test3/bad_redefine12.msg trunk/work/lib_test3/bad_redefine14.msg trunk/work/lib_test3/bad_redefine15.msg trunk/work/lib_test3/bad_redefine2.msg trunk/work/lib_test3/bad_redefine3.msg trunk/work/lib_test3/bad_redefine4.msg trunk/work/lib_test3/bad_redefine5.msg trunk/work/lib_test3/bad_redefine6.msg trunk/work/lib_test3/bad_redefine7.msg trunk/work/lib_test3/bad_reference1.msg trunk/work/lib_test3/bad_rename1.msg trunk/work/lib_test3/bad_rename2.msg trunk/work/lib_test3/bad_rename3.msg trunk/work/lib_test3/bad_require1.msg trunk/work/lib_test3/bad_require2.msg trunk/work/lib_test3/bad_root1.msg trunk/work/lib_test3/bad_root2.msg trunk/work/lib_test3/bad_root3.msg trunk/work/lib_test3/bad_root4.msg trunk/work/lib_test3/bad_root5.msg trunk/work/lib_test3/bad_root6.msg trunk/work/lib_test3/bad_root7.msg trunk/work/lib_test3/bad_select1.msg trunk/work/lib_test3/bad_select2.msg trunk/work/lib_test3/bad_select3.msg trunk/work/lib_test3/bad_select4.msg trunk/work/lib_test3/bad_select5.msg trunk/work/lib_test3/bad_select6.msg trunk/work/lib_test3/bad_select7.msg trunk/work/lib_test3/bad_select8.msg trunk/work/lib_test3/bad_select9.msg trunk/work/lib_test3/bad_separate1.msg trunk/work/lib_test3/bad_separate2.msg trunk/work/lib_test3/bad_set_item1.msg trunk/work/lib_test3/bad_string1.msg trunk/work/lib_test3/bad_string2.msg trunk/work/lib_test3/bad_strip1.msg trunk/work/lib_test3/bad_strip2.msg trunk/work/lib_test3/bad_syntax01.msg trunk/work/lib_test3/bad_syntax02.msg trunk/work/lib_test3/bad_syntax03.msg trunk/work/lib_test3/bad_syntax1.msg trunk/work/lib_test3/bad_syntax2.msg trunk/work/lib_test3/bad_to_integer_16.msg trunk/work/lib_test3/bad_to_integer_32.msg trunk/work/lib_test3/bad_to_integer_64.msg trunk/work/lib_test3/bad_to_integer_8.msg trunk/work/lib_test3/bad_to_real_32.msg trunk/work/lib_test3/bad_to_real_64.msg trunk/work/lib_test3/bad_tuple_too_long1.msg trunk/work/lib_test3/bad_tuple_too_long2.msg trunk/work/lib_test3/bad_type1.msg trunk/work/lib_test3/bad_type3.msg trunk/work/lib_test3/bad_type4.msg trunk/work/lib_test3/bad_undefine1.msg trunk/work/lib_test3/bad_undefine2.msg trunk/work/lib_test3/bad_undefine3.msg trunk/work/lib_test3/bad_undefine4.msg trunk/work/lib_test3/bad_unicode_string1.msg trunk/work/lib_test3/bad_unique1.msg trunk/work/lib_test3/bad_unique2.msg trunk/work/lib_test3/bad_vdrs4.msg trunk/work/lib_test3/bad_vdus3.msg trunk/work/lib_test3/bad_veen.msg trunk/work/lib_test3/bad_veen2.msg trunk/work/lib_test3/bad_veen3.msg trunk/work/lib_test3/bad_veen4.msg trunk/work/lib_test3/bad_verbatim_string1.msg trunk/work/lib_test3/bad_verbatim_string2.msg trunk/work/lib_test3/bad_void1.msg trunk/work/lib_test3/bad_weak_reference01.msg trunk/work/lib_test3/bad_weak_reference02.msg trunk/work/lib_test3/bad_weak_reference03.msg trunk/work/lib_test3/bad_weak_reference04.msg trunk/work/lib_test3/c_self_test_do_it Log: Now using the redirection flag here. Modified: trunk/work/lib_test3/bad_address_of1.msg =================================================================== --- trunk/work/lib_test3/bad_address_of1.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_address_of1.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -1,7 +1,7 @@ ****** Fatal Error: Right hand side expression of := assignment expected here. + Line 16 column 10 in BAD_ADDRESS_OF1 (/home/colnet/SmartEiffel/work/lib_test3/bad_address_of1.e): prt := $Current; ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_address_of2.msg =================================================================== --- trunk/work/lib_test3/bad_address_of2.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_address_of2.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -2,8 +2,8 @@ The $ operator must be followed by the final name of a feature which is not a constant attribute or by the name of some local variable as well. + Line 14 column 8 in BAD_ADDRESS_OF2 (/home/colnet/SmartEiffel/work/lib_test3/bad_address_of2.e): foo($Current); ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_address_of3.msg =================================================================== --- trunk/work/lib_test3/bad_address_of3.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_address_of3.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -1,8 +1,8 @@ ****** Fatal Error: The $ operator must be followed by the final name of a feature which is not a constant attribute or by the name of some local variable as well. Feature `p' not found. + Line 13 column 18 in BAD_ADDRESS_OF3 (/home/colnet/SmartEiffel/work/lib_test3/bad_address_of3.e): Result := foo($p) ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent01.msg =================================================================== --- trunk/work/lib_test3/bad_agent01.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent01.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -1,6 +1,6 @@ ****** Fatal Error: Open operand out of "agent" keyword scope. + Line 9 column 7 in BAD_AGENT01 (/home/colnet/SmartEiffel/work/lib_test3/bad_agent01.e): foo(?) ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent02.msg =================================================================== --- trunk/work/lib_test3/bad_agent02.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent02.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -10,4 +10,3 @@ print_item(c: CHARACTER; item: STRING) is ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent03.msg =================================================================== --- trunk/work/lib_test3/bad_agent03.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent03.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -4,8 +4,8 @@ you to show clearly what arguments you are passing to this agent. (Note: this explicit manifest TUPLE notation will not incurs extra memory allocation. Keep cool.) + Line 14 column 17 in BAD_AGENT03 (/home/colnet/SmartEiffel/work/lib_test3/bad_agent03.e): my_agent.call(tuple); ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent04.msg =================================================================== --- trunk/work/lib_test3/bad_agent04.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent04.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -10,4 +10,3 @@ call (o: O_) is ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent05.msg =================================================================== --- trunk/work/lib_test3/bad_agent05.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent05.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -7,4 +7,3 @@ p.item(['a']); ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent06.msg =================================================================== --- trunk/work/lib_test3/bad_agent06.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent06.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -10,4 +10,3 @@ ROUTINE[O_] ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent07.msg =================================================================== --- trunk/work/lib_test3/bad_agent07.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent07.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -10,4 +10,3 @@ ROUTINE[O_] ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent08.msg =================================================================== --- trunk/work/lib_test3/bad_agent08.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent08.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -10,4 +10,3 @@ f(s: STRING; i: STRING) is ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent09.msg =================================================================== --- trunk/work/lib_test3/bad_agent09.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent09.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -10,4 +10,3 @@ f is ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent11.msg =================================================================== --- trunk/work/lib_test3/bad_agent11.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent11.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -10,4 +10,3 @@ foo(p: PROCEDURE[TUPLE]) is ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent13.msg =================================================================== --- trunk/work/lib_test3/bad_agent13.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent13.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -1,13 +1,14 @@ ****** Error: TUPLE type expected for open arguments of agent type. (See also next fatal error message.) + Line 9 column 10 in PROCEDURE (/home/colnet/SmartEiffel/lib/kernel/procedure.e): ROUTINE[O_] ^ ------ ****** Fatal Error: When the context of the validation is PROCEDURE[BAD_AGENT13], this type mark is not a TUPLE. (This is actually BAD_AGENT13.) + Line 9 column 10 in PROCEDURE (/home/colnet/SmartEiffel/lib/kernel/procedure.e): ROUTINE[O_] ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent14.msg =================================================================== --- trunk/work/lib_test3/bad_agent14.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent14.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -10,4 +10,3 @@ print_item(item: STRING; c: CHARACTER) is ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent15.msg =================================================================== --- trunk/work/lib_test3/bad_agent15.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent15.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -1,7 +1,7 @@ ****** Fatal Error: To many actual arguments for agent call. (The agent you are trying to call has no arguments.) + Line 11 column 21 in BAD_AGENT15 (/home/colnet/SmartEiffel/work/lib_test3/bad_agent15.e): my_procedure.call([1]) ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent16.msg =================================================================== --- trunk/work/lib_test3/bad_agent16.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent16.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -1,8 +1,8 @@ ****** Fatal Error: Bad number of actual arguments for agent call. (The agent you are trying to call has 1 argument. Its type is -FUNCTION[ANY,TUPLE[INTEGER_8],INTEGER].) +FUNCTION[TUPLE[INTEGER_8],INTEGER].) + Line 11 column 26 in BAD_AGENT16 (/home/colnet/SmartEiffel/work/lib_test3/bad_agent16.e): i := my_function.item([1, 2]) ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent17.msg =================================================================== --- trunk/work/lib_test3/bad_agent17.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent17.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -10,4 +10,3 @@ list.do_all(agent {BAD_AGENT17}.f1(1,2)) ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_agent18.msg =================================================================== --- trunk/work/lib_test3/bad_agent18.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_agent18.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -10,4 +10,3 @@ list.do_all(agent {BAD_AGENT18}.f1(1,2)) ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_argument_list1.msg =================================================================== --- trunk/work/lib_test3/bad_argument_list1.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_argument_list1.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -6,4 +6,3 @@ foo(bar, bar: INTEGER) is ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_array1.msg =================================================================== --- trunk/work/lib_test3/bad_array1.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_array1.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -7,4 +7,3 @@ if a1.bidon then ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assertion1.msg =================================================================== --- trunk/work/lib_test3/bad_assertion1.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_assertion1.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -10,4 +10,3 @@ x := 3; ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assertion2.msg =================================================================== --- trunk/work/lib_test3/bad_assertion2.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_assertion2.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -1,7 +1,7 @@ ****** Fatal Error: An assertion must be a BOOLEAN expression.(The type of this expression is actually INTEGER_8.) + Line 11 column 6 in BAD_ASSERTION2 (/home/colnet/SmartEiffel/work/lib_test3/bad_assertion2.e): 3 ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assignment1.msg =================================================================== --- trunk/work/lib_test3/bad_assignment1.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_assignment1.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -8,4 +8,3 @@ i := Void ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assignment10.msg =================================================================== --- trunk/work/lib_test3/bad_assignment10.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_assignment10.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -7,4 +7,3 @@ integer_8 := integer_32 ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assignment11.msg =================================================================== --- trunk/work/lib_test3/bad_assignment11.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_assignment11.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -8,4 +8,3 @@ integer_8 := integer_64 ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assignment12.msg =================================================================== --- trunk/work/lib_test3/bad_assignment12.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_assignment12.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -7,4 +7,3 @@ integer_16 := integer_32 ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assignment13.msg =================================================================== --- trunk/work/lib_test3/bad_assignment13.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_assignment13.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -8,4 +8,3 @@ integer_16 := integer_64 ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assignment14.msg =================================================================== --- trunk/work/lib_test3/bad_assignment14.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_assignment14.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -8,4 +8,3 @@ integer_32 := integer_64 ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assignment15.msg =================================================================== --- trunk/work/lib_test3/bad_assignment15.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_assignment15.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -7,4 +7,3 @@ real_32 := real_64 ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assignment16.msg =================================================================== --- trunk/work/lib_test3/bad_assignment16.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_assignment16.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -7,4 +7,3 @@ real_32 := integer_32 ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assignment17.msg =================================================================== --- trunk/work/lib_test3/bad_assignment17.msg 2005-12-23 16:24:30 UTC (rev 6749) +++ trunk/work/lib_test3/bad_assignment17.msg 2005-12-23 17:03:28 UTC (rev 6750) @@ -7,4 +7,3 @@ real_64 := integer_64 ^ ^ ------ -Error occurs while compiling. Compilation process aborted. Modified: trunk/work/lib_test3/bad_assignment18.msg =================================================================== --- trunk/work/lib_test3/bad_assignment18.msg 2005-12-23 16:24:30 UTC (rev 6749) From pini at users.gforge.inria.fr Tue Dec 27 16:13:52 2005 From: pini at users.gforge.inria.fr (pini at users.gforge.inria.fr) Date: Tue, 27 Dec 2005 15:13:52 +0000 Subject: [Smarteiffel-commits] r6751 - trunk/tools/generation/eiffeldoc Message-ID: <20051227_151352_076030. pini@users.gforge.inria.fr> Author: pini Date: 2005-12-27 15:13:51 +0000 (Tue, 27 Dec 2005) New Revision: 6751 Modified: trunk/tools/generation/eiffeldoc/eiffeldoc_shorter_classdoc.e Log: Added commas between generic formal arguments Modified: trunk/tools/generation/eiffeldoc/eiffeldoc_shorter_classdoc.e =================================================================== --- trunk/tools/generation/eiffeldoc/eiffeldoc_shorter_classdoc.e 2005-12-23 17:03:28 UTC (rev 6750) +++ trunk/tools/generation/eiffeldoc/eiffeldoc_shorter_classdoc.e 2005-12-27 15:13:51 UTC (rev 6751) @@ -760,6 +760,9 @@ until i > list.upper loop + if i > list.lower then + html.put_string(once ", ") + end put_type_mark(list.item(i)) i := i + 1 end @@ -883,6 +886,9 @@ until i > list.upper loop + if i > list.lower then + html.put_string(once ", ") + end put_type_mark(list.item(i)) i := i + 1 end