/[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 89346 by jasonw, Thu Sep 15 08:09:35 2011 UTC revision 89347 by jasonw, Fri Aug 10 15:09:25 2012 UTC
# Line 12  inherit Line 12  inherit
12          LIKE_TYPE_A          LIKE_TYPE_A
13                  redefine                  redefine
14                          actual_type, deep_actual_type, context_free_type,                          actual_type, deep_actual_type, context_free_type,
15                          associated_class, associated_class_type, conform_to, conformance_type, convert_to,                          base_class, associated_class_type, conform_to, conformance_type, convert_to,
16                          generics, has_associated_class, has_associated_class_type, formal_instantiated_in,                          generics, has_associated_class, has_associated_class_type, formal_instantiated_in,
17                          instantiated_in, duplicate, set_separate_mark,                          instantiated_in, duplicate, set_separate_mark,
18                          is_basic, is_expanded, is_external, is_like_current, is_none, is_reference, is_ephemeral,                          is_basic, is_expanded, is_external, is_like_current, is_none, is_reference, is_ephemeral,
# Line 25  inherit Line 25  inherit
25                          maximum_interval_value, minimum_interval_value, is_optimized_as_frozen,                          maximum_interval_value, minimum_interval_value, is_optimized_as_frozen,
26                          is_generated_as_single_type, heaviest, instantiation_in, adapted_in,                          is_generated_as_single_type, heaviest, instantiation_in, adapted_in,
27                          hash_code, internal_generic_derivation, internal_same_generic_derivation_as,                          hash_code, internal_generic_derivation, internal_same_generic_derivation_as,
28                          is_class_valid, skeleton_adapted_in, good_generics, has_like_current, is_type_set                          is_class_valid, skeleton_adapted_in, good_generics, has_like_current
29                  end                  end
30    
31  feature -- Visitor  feature -- Visitor
# Line 131  feature -- Properties Line 131  feature -- Properties
131          is_none: BOOLEAN = False          is_none: BOOLEAN = False
132                          -- Is current actual type NONE?                          -- Is current actual type NONE?
133    
         is_type_set: BOOLEAN  
                         -- <Precursor>  
                 do  
                         Result := conformance_type /= Void and then conformance_type.is_type_set  
                 end  
   
134          is_basic: BOOLEAN          is_basic: BOOLEAN
135                          -- Is the current actual type a basic one?                          -- Is the current actual type a basic one?
136                  do                  do
# Line 186  feature -- Access Line 180  feature -- Access
180                          Result := {SHARED_HASH_CODE}.other_code                          Result := {SHARED_HASH_CODE}.other_code
181                  end                  end
182    
183          associated_class: CLASS_C          base_class: CLASS_C
184                          -- Associated class                          -- Associated class
185                  do                  do
186                          Result := conformance_type.associated_class                          Result := conformance_type.base_class
187                  end                  end
188    
189          associated_class_type (a_context_type: TYPE_A): CLASS_TYPE          associated_class_type (a_context_type: TYPE_A): CLASS_TYPE
# Line 497  feature {COMPILER_EXPORTER} -- Primitive Line 491  feature {COMPILER_EXPORTER} -- Primitive
491                          -- Instantiation of Current in the context of `class_type',                          -- Instantiation of Current in the context of `class_type',
492                          -- assuming that Current is written in class of id `written_id'.                          -- assuming that Current is written in class of id `written_id'.
493                  local                  local
494                          a: ATTACHABLE_TYPE_A                          a: ANNOTATED_TYPE_A
495                  do                  do
496                                  -- Special cases for calls on a target which is a manifest integer                                  -- Special cases for calls on a target which is a manifest integer
497                                  -- that might be compatible with _8 or _16. The returned                                  -- that might be compatible with _8 or _16. The returned
# Line 522  feature {COMPILER_EXPORTER} -- Primitive Line 516  feature {COMPILER_EXPORTER} -- Primitive
516                                  Result := Result.to_other_attachment (Current)                                  Result := Result.to_other_attachment (Current)
517                          elseif Result.is_attached then                          elseif Result.is_attached then
518                                          -- Remove explicit "attached" mark.                                          -- Remove explicit "attached" mark.
519                                  if attached {ATTACHABLE_TYPE_A} Result as t then                                  if attached {ANNOTATED_TYPE_A} Result as t then
520                                          a := t.duplicate                                          a := t.duplicate
521                                          a.set_detachable_mark                                          a.set_detachable_mark
522                                          Result := a                                          Result := a
# Line 637  feature {COMPILER_EXPORTER} -- Primitive Line 631  feature {COMPILER_EXPORTER} -- Primitive
631                  end                  end
632    
633  note  note
634          copyright:      "Copyright (c) 1984-2011, Eiffel Software"          copyright:      "Copyright (c) 1984-2012, Eiffel Software"
635          license:        "GPL version 2 (see http://www.eiffel.com/licensing/gpl.txt)"          license:        "GPL version 2 (see http://www.eiffel.com/licensing/gpl.txt)"
636          licensing_options:      "http://www.eiffel.com/licensing"          licensing_options:      "http://www.eiffel.com/licensing"
637          copying: "[          copying: "[

Legend:
Removed from v.89346  
changed lines
  Added in v.89347

  ViewVC Help
Powered by ViewVC 1.1.23