PageRenderTime 19ms CodeModel.GetById 17ms app.highlight 0ms RepoModel.GetById 1ms app.codeStats 1ms

/test/language/unclassified/test_in_out_visitor.e

http://github.com/tybor/Liberty
Specman e | 88 lines | 51 code | 14 blank | 23 comment | 1 complexity | 954d7291b6fdbd3577216d402cfc05d8 MD5 | raw file
 1-- This file is part of SmartEiffel The GNU Eiffel Compiler Tools and Libraries.
 2-- See the Copyright notice at the end of this file.
 3--
 4class TEST_IN_OUT_VISITOR
 5
 6inherit
 7   IN_OUT_VISITOR
 8      redefine enter_class_text, exit_class_text
 9      end
10
11insert
12   EXTERNAL_TOOL
13   GLOBALS
14   EIFFELTEST_TOOLS
15
16create {}
17   make
18
19feature {}
20   class_text: CLASS_TEXT
21
22   done: SET[STRING]
23
24   make
25      local
26         cn: CLASS_NAME
27      do
28         bootstrap
29         create {HASHED_SET[STRING]} done.make
30         create cn.unknown_position(ace.root_class_name, False)
31         class_text := smart_eiffel.class_text(cn)
32         assert(class_text /= Void)
33         class_text.accept(Current)
34         assert(done.fast_has(class_text.name.to_string))
35      end
36
37   enter_class_text (visited: CLASS_TEXT): BOOLEAN
38      local
39         cn: STRING
40      do
41         cn := visited.name.to_string
42         Result := not done.has(cn)
43         if Result then
44            done.add(cn)
45         end
46      end
47
48   exit_class_text (visited: CLASS_TEXT)
49      do
50         -- std_output.put_string(visited.name.to_string)
51         -- std_output.put_new_line
52      end
53
54   parse_arguments
55      do
56         root_class_name := "STRING"
57         root_procedure_name := "make_empty"
58      end
59
60   use_short_mode: BOOLEAN False
61
62   is_valid_argument_for_ace_mode (arg: STRING): BOOLEAN
63      do
64      end
65
66   usage: STRING ""
67
68   valid_argument_for_ace_mode: STRING ""
69
70end -- class TEST_IN_OUT_VISITOR
71--
72-- ------------------------------------------------------------------------------------------------------------------------------
73-- Copyright notice below. Please read.
74--
75-- SmartEiffel is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License,
76-- as published by the Free Software Foundation; either version 2, or (at your option) any later version.
77-- SmartEiffel is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY; without even the implied warranty
78-- of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have
79-- received a copy of the GNU General Public License along with SmartEiffel; see the file COPYING. If not, write to the Free
80-- Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
81--
82-- Copyright(C) 1994-2002: INRIA - LORIA (INRIA Lorraine) - ESIAL U.H.P.       - University of Nancy 1 - FRANCE
83-- Copyright(C) 2003-2006: INRIA - LORIA (INRIA Lorraine) - I.U.T. Charlemagne - University of Nancy 2 - FRANCE
84--
85-- Authors: Dominique COLNET, Philippe RIBET, Cyril ADRIAN, Vincent CROIZIER, Frederic MERIZEN
86--
87-- http://SmartEiffel.loria.fr - SmartEiffel@loria.fr
88-- ------------------------------------------------------------------------------------------------------------------------------