/[eiffelstudio]/branches/eth/eve/Src/Eiffel/API/evaluated_type/like_current.e
ViewVC logotype

Diff of /branches/eth/eve/Src/Eiffel/API/evaluated_type/like_current.e

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 69972 by martins, Mon Apr 30 18:38:45 2007 UTC revision 69973 by alexk, Tue Aug 14 19:15:39 2007 UTC
# Line 71  feature -- Properties Line 71  feature -- Properties
71    
72          same_as (other: TYPE_A): BOOLEAN is          same_as (other: TYPE_A): BOOLEAN is
73                          -- Is the current type the same as `other' ?                          -- Is the current type the same as `other' ?
74                    local
75                            l: LIKE_CURRENT
76                  do                  do
77                          Result := other.is_like_current                          if other.is_like_current then
78                                    l ?= other
79                                    Result :=
80                                            has_attached_mark = l.has_attached_mark and then
81                                            has_detachable_mark = l.has_detachable_mark
82                            end
83                  end                  end
84    
85  feature -- Access  feature -- Access
# Line 107  feature -- Output Line 114  feature -- Output
114                          actual_dump: STRING                          actual_dump: STRING
115                  do                  do
116                          actual_dump := conformance_type.dump                          actual_dump := conformance_type.dump
117                          create Result.make (15 + actual_dump.count)                          create Result.make (17 + actual_dump.count)
118                          Result.append ("[like Current] ")                          Result.append_character ('[')
119                            if has_attached_mark then
120                                    Result.append_character ('!')
121                                    Result.append_character (' ')
122                            elseif has_detachable_mark then
123                                    Result.append_character ('?')
124                                    Result.append_character (' ')
125                            end
126                            Result.append ("like Current] ")
127                          Result.append (actual_dump)                          Result.append (actual_dump)
128                  end                  end
129    
130          ext_append_to (st: TEXT_FORMATTER; c: CLASS_C) is          ext_append_to (st: TEXT_FORMATTER; c: CLASS_C) is
131                  do                  do
132                          st.process_symbol_text (ti_L_bracket)                          st.process_symbol_text (ti_L_bracket)
133                            if has_attached_mark then
134                                    st.process_symbol_text (ti_exclamation)
135                                    st.add_space
136                            elseif has_detachable_mark then
137                                    st.process_symbol_text (ti_question)
138                                    st.add_space
139                            end
140                          st.process_keyword_text (ti_Like_keyword, Void)                          st.process_keyword_text (ti_Like_keyword, Void)
141                          st.add_space                          st.add_space
142                          st.process_keyword_text (ti_Current, Void)                          st.process_keyword_text (ti_Current, Void)
# Line 169  feature {COMPILER_EXPORTER} -- Primitive Line 191  feature {COMPILER_EXPORTER} -- Primitive
191                          if a_ancestor /= a_descendant then                          if a_ancestor /= a_descendant then
192                                  create Result                                  create Result
193                                  Result.set_actual_type (a_descendant.actual_type)                                  Result.set_actual_type (a_descendant.actual_type)
194                                    if has_attached_mark then
195                                            Result.set_attached_mark
196                                    elseif has_detachable_mark then
197                                            Result.set_detachable_mark
198                                    end
199                          else                          else
200                                  Result := Current                                  Result := Current
201                          end                          end
# Line 206  feature {COMPILER_EXPORTER} -- Primitive Line 233  feature {COMPILER_EXPORTER} -- Primitive
233                  end                  end
234    
235  indexing  indexing
236          copyright:      "Copyright (c) 1984-2006, Eiffel Software"          copyright:      "Copyright (c) 1984-2007, Eiffel Software"
237          license:        "GPL version 2 (see http://www.eiffel.com/licensing/gpl.txt)"          license:        "GPL version 2 (see http://www.eiffel.com/licensing/gpl.txt)"
238          licensing_options:      "http://www.eiffel.com/licensing"          licensing_options:      "http://www.eiffel.com/licensing"
239          copying: "[          copying: "[

Legend:
Removed from v.69972  
changed lines
  Added in v.69973

  ViewVC Help
Powered by ViewVC 1.1.23