/[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 77824 by paulb, Wed Mar 11 23:59:15 2009 UTC revision 77825 by alexk, Fri Mar 20 12:55:11 2009 UTC
# Line 414  feature {COMPILER_EXPORTER} -- Primitive Line 414  feature {COMPILER_EXPORTER} -- Primitive
414          instantiation_in (type: TYPE_A; written_id: INTEGER): TYPE_A          instantiation_in (type: TYPE_A; written_id: INTEGER): TYPE_A
415                          -- Instantiation of Current in the context of `class_type',                          -- Instantiation of Current in the context of `class_type',
416                          -- assuming that Current is written in class of id `written_id'.                          -- assuming that Current is written in class of id `written_id'.
417                    local
418                            a: ATTACHABLE_TYPE_A
419                  do                  do
420                                  -- Special cases for calls on a target which is a manifest integer                                  -- Special cases for calls on a target which is a manifest integer
421                                  -- that might be compatible with _8 or _16. The returned                                  -- that might be compatible with _8 or _16. The returned
# Line 432  feature {COMPILER_EXPORTER} -- Primitive Line 434  feature {COMPILER_EXPORTER} -- Primitive
434                                  -- i16 := (0x00FF).to_integer_16 & i8                                  -- i16 := (0x00FF).to_integer_16 & i8
435                                  -- or                                  -- or
436                                  -- i16 := (0x00FF & i8).to_integer_16                                  -- i16 := (0x00FF & i8).to_integer_16
437                          Result := type.intrinsic_type.to_other_attachment (Current)                          Result := type.intrinsic_type
438                            if is_attached then
439                                            -- Adapt attachment marks as required.
440                                    Result := Result.to_other_attachment (Current)
441                            elseif Result.is_attached then
442                                            -- Remove explicit "attached" mark.
443                                    if attached {ATTACHABLE_TYPE_A} Result as t then
444                                            a := t.duplicate
445                                            a.set_detachable_mark
446                                            Result := a
447                                    end
448                            elseif Result.is_implicitly_attached then
449                                    Result := Result.as_implicitly_detachable
450                            end
451                  end                  end
452    
453          adapted_in, skeleton_adapted_in (a_class_type: CLASS_TYPE): CL_TYPE_A          adapted_in, skeleton_adapted_in (a_class_type: CLASS_TYPE): CL_TYPE_A

Legend:
Removed from v.77824  
changed lines
  Added in v.77825

  ViewVC Help
Powered by ViewVC 1.1.23