/[eiffelstudio]/branches/CAT_mono/Src/Eiffel/eiffel/genericity/cl_type_i.e
ViewVC logotype

Diff of /branches/CAT_mono/Src/Eiffel/eiffel/genericity/cl_type_i.e

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

revision 6562 by dinov, Wed Sep 25 16:56:37 1996 UTC revision 7681 by michaels, Wed Feb 12 09:23:09 1997 UTC
# Line 98  feature Line 98  feature
98          description: ATTR_DESC is          description: ATTR_DESC is
99                          -- Type description for skeletons                          -- Type description for skeletons
100                  local                  local
101                          exp: EXPANDED_DESC;                          exp: EXPANDED_DESC
102                          types: TYPE_LIST;                          types: TYPE_LIST
103                          pos: INTEGER;                          pos: INTEGER
104                            ref: REFERENCE_DESC
105                  do                  do
106                          if is_expanded then                          if is_expanded then
107                                  !!exp;                                  !!exp;
# Line 121  feature Line 122  feature
122                          else                          else
123                                  Result := c_type.description;                                  Result := c_type.description;
124                          end;                          end;
125    
126                            ref ?= Result
127                            if ref /= Void then
128                                    ref.set_class_type_i (Current)
129                            end
130                  end;                  end;
131    
132          c_type: TYPE_C is          c_type: TYPE_C is
# Line 153  feature Line 159  feature
159                          file.putstring (s);                          file.putstring (s);
160                  end;                  end;
161    
162            has_associated_class_type: BOOLEAN is
163                            -- Has `Current' an associated class type?
164                    local
165                            types : TYPE_LIST
166                    do
167                            types := base_class.types
168    
169                            if is_expanded then
170                                    is_expanded := false
171                                    Result := types.has_type (Current)
172                                    is_expanded := true
173                            elseif is_separate then
174                                    is_separate := false
175                                    Result := types.has_type (Current)
176                                    is_separate := true
177                            else
178                                    Result := types.has_type (Current)
179                            end
180                    end
181    
182          associated_class_type: CLASS_TYPE is          associated_class_type: CLASS_TYPE is
183                          -- Associated class type                          -- Associated class type
184                    require
185                            has: has_associated_class_type
186                  local                  local
187                          types: TYPE_LIST;                          types: TYPE_LIST;
188                          pos: INTEGER;                          pos: INTEGER;
# Line 177  feature Line 205  feature
205                          -- Associated expanded class type                          -- Associated expanded class type
206                  require                  require
207                          is_expanded: is_expanded                          is_expanded: is_expanded
208                            has: has_associated_class_type
209                  do                  do
210                          is_expanded := false;                          is_expanded := false;
211                          Result := associated_class_type;                          Result := associated_class_type;
# Line 187  feature Line 216  feature
216                          -- Associated separate class type                          -- Associated separate class type
217                  require                  require
218                          is_separate: is_separate                          is_separate: is_separate
219                            has: has_associated_class_type
220                  do                  do
221                          is_separate := false;                          is_separate := false;
222                          Result := associated_class_type;                          Result := associated_class_type;

Legend:
Removed from v.6562  
changed lines
  Added in v.7681

  ViewVC Help
Powered by ViewVC 1.1.23