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

Annotation of /branches/eth/eve/Src/Eiffel/API/evaluated_type/real_a.e

Parent Directory Parent Directory | Revision Log Revision Log


Revision 71150 - (hide annotations)
Wed Nov 14 19:34:34 2007 UTC (12 years, 2 months ago) by alexk
Original Path: trunk/Src/Eiffel/API/evaluated_type/real_32_a.e
File size: 2518 byte(s)
Supported attachment marks for formal generic parameter (in internal
structures only).
Refactored types that can have attachment marks into a separate class.
Fixed issue when "like Current" was not considered as attached even when
compiling with an option "is_attached_by_default".
Taken into account attachment status when comparing types for equality.
Made TUPLE type in an agent type (PROCEDURE or FUNCTION) attached in
void-safe context, so that it conforms to the usual type declaration.
Ensured actual type preserves attachment status of the corresponding
anchored type.

1 dinov 3375 indexing
2 manus 47234 description: "Actual type for real 32 bits type."
3 manus 56535 legal: "See notice at end of class."
4     status: "See notice at end of class."
5 manus 9656 date: "$Date$"
6 dinov 3375 revision: "$Revision $"
7    
8 manus 47234 class REAL_32_A
9 grator 18
10     inherit
11     BASIC_A
12     redefine
13 manus 47234 is_real_32, associated_class, same_as, is_numeric,
14 manus 57234 default_create, process
15 grator 18 end
16    
17 manus 41732 create
18     default_create
19    
20     feature {NONE} -- Initialization
21    
22     default_create is
23 manus 47234 -- Initialize new instance of REAL_32_A.
24 manus 41732 do
25     make (associated_class.class_id)
26     end
27    
28 manus 57234 feature -- Visitor
29    
30     process (v: TYPE_A_VISITOR) is
31     -- Process current element.
32     do
33     v.process_real_32_a (Current)
34     end
35    
36 dinov 3078 feature -- Property
37    
38 manus 47234 is_real_32: BOOLEAN is True
39     -- Is the current type a real 32 bits type ?
40 dinov 3078
41 manus 11302 associated_class: CLASS_C is
42     -- Class REAL
43 dinov 3078 once
44 manus 47234 Result := System.real_32_class.compiled_class
45 manus 9656 end
46 dinov 3078
47 dinov 3181 feature {COMPILER_EXPORTER}
48 grator 18
49 manus 9656 is_numeric: BOOLEAN is True
50 grator 18 -- Is the current type a numeric type ?
51    
52 manus 47234 type_i: REAL_32_I is
53 grator 18 -- C type
54 manus 32079 do
55 manus 47234 Result := real32_c_type
56 manus 9656 end
57 grator 18
58     same_as (other: TYPE_A): BOOLEAN is
59     -- Is the current type the same as `other' ?
60     do
61 manus 47234 Result := other.is_real_32
62 alexk 71150 and then is_attached = other.is_attached
63 manus 9656 end
64 grator 18
65 manus 56535 indexing
66 alexk 71150 copyright: "Copyright (c) 1984-2007, Eiffel Software"
67 manus 58027 license: "GPL version 2 (see http://www.eiffel.com/licensing/gpl.txt)"
68 manus 56535 licensing_options: "http://www.eiffel.com/licensing"
69     copying: "[
70     This file is part of Eiffel Software's Eiffel Development Environment.
71 manus 58027
72 manus 56535 Eiffel Software's Eiffel Development Environment is free
73     software; you can redistribute it and/or modify it under
74     the terms of the GNU General Public License as published
75     by the Free Software Foundation, version 2 of the License
76     (available at the URL listed under "license" above).
77 manus 58027
78 manus 56535 Eiffel Software's Eiffel Development Environment is
79     distributed in the hope that it will be useful, but
80     WITHOUT ANY WARRANTY; without even the implied warranty
81     of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
82     See the GNU General Public License for more details.
83 manus 58027
84 manus 56535 You should have received a copy of the GNU General Public
85     License along with Eiffel Software's Eiffel Development
86     Environment; if not, write to the Free Software Foundation,
87     Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
88     ]"
89     source: "[
90     Eiffel Software
91     356 Storke Road, Goleta, CA 93117 USA
92     Telephone 805-685-1006, Fax 805-685-6869
93     Website http://www.eiffel.com
94     Customer support http://support.eiffel.com
95     ]"
96    
97 manus 47234 end -- class REAL_32_A

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.23