/[eiffelstudio]/FreeELKS/trunk/library/kernel/integer_64_ref.e
ViewVC logotype

Diff of /FreeELKS/trunk/library/kernel/integer_64_ref.e

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

revision 91476 by ericb, Thu Feb 9 11:21:18 2006 UTC revision 91477 by ericb, Sun Jan 14 09:47:13 2007 UTC
# Line 72  feature -- Access Line 72  feature -- Access
72          ascii_char: CHARACTER is          ascii_char: CHARACTER is
73                          -- Returns corresponding ASCII character to `item' value.                          -- Returns corresponding ASCII character to `item' value.
74                  obsolete                  obsolete
75                          "Use to_character instead"                          "Use to_character_8 instead"
76                  require                  require
77                          valid_character_code: is_valid_character_code                          valid_character_code: is_valid_character_8_code
78                  do                  do
79                          Result := item.to_character                          Result := item.to_character_8
80                  end                  end
81    
82          Min_value: INTEGER_64 is -9223372036854775808          Min_value: INTEGER_64 is -9223372036854775808
# Line 110  feature -- Element change Line 110  feature -- Element change
110    
111  feature -- Status report  feature -- Status report
112    
113          divisible (other: INTEGER_64_REF): BOOLEAN is          divisible (other: like Current): BOOLEAN is
114                          -- May current object be divided by `other'?                          -- May current object be divided by `other'?
115                  do                  do
116                          Result := other.item /= 0                          Result := other.item /= 0
# Line 148  feature -- Status report Line 148  feature -- Status report
148                  end                  end
149    
150          is_valid_character_code: BOOLEAN is          is_valid_character_code: BOOLEAN is
151                            -- Does current object represent a CHARACTER_8?
152                    obsolete
153                            "Use `is_valid_character_8_code' instead."
154                    do
155                            Result := is_valid_character_8_code
156                    end
157    
158            is_valid_character_8_code: BOOLEAN is
159                            -- Does current object represent a CHARACTER_8?
160                    do
161                            Result := item >= {CHARACTER_8}.Min_value and
162                                    item <= {CHARACTER_8}.Max_value
163                    end
164    
165            is_valid_character_32_code: BOOLEAN is
166                          -- Does current object represent a character?                          -- Does current object represent a character?
167                  do                  do
168                          Result := item >= {CHARACTER}.Min_value and item <= {CHARACTER}.Max_value                          Result := item >= 0 and then
169                                    item.to_natural_64 >= {CHARACTER_32}.Min_value and
170                                    item.to_natural_64 <= {CHARACTER_32}.Max_value
171                  end                  end
172    
173  feature -- Basic operations  feature -- Basic operations
# Line 279  feature -- Conversion Line 296  feature -- Conversion
296                  do                  do
297                          Result := item.as_natural_32                          Result := item.as_natural_32
298                  end                  end
299            
300          as_natural_64: NATURAL_64 is          as_natural_64: NATURAL_64 is
301                          -- Convert `item' into an NATURAL_64 value.                          -- Convert `item' into an NATURAL_64 value.
302                  do                  do
# Line 291  feature -- Conversion Line 308  feature -- Conversion
308                  do                  do
309                          Result := item.as_integer_8                          Result := item.as_integer_8
310                  end                  end
311                    
312          as_integer_16: INTEGER_16 is          as_integer_16: INTEGER_16 is
313                          -- Convert `item' into an INTEGER_16 value.                          -- Convert `item' into an INTEGER_16 value.
314                  do                  do
# Line 336  feature -- Conversion Line 353  feature -- Conversion
353                  do                  do
354                          Result := as_natural_32                          Result := as_natural_32
355                  end                  end
356            
357          frozen to_natural_64: NATURAL_64 is          frozen to_natural_64: NATURAL_64 is
358                          -- Convert `item' into an NATURAL_64 value.                          -- Convert `item' into an NATURAL_64 value.
359                  require                  require
# Line 371  feature -- Conversion Line 388  feature -- Conversion
388                  do                  do
389                          Result := as_integer_32                          Result := as_integer_32
390                  end                  end
391                    
392          frozen to_integer_64: INTEGER_64 is          frozen to_integer_64: INTEGER_64 is
393                          -- Return `item'.                          -- Return `item'.
394                  do                  do
# Line 407  feature -- Conversion Line 424  feature -- Conversion
424                          loop                          loop
425                                  a_digit := (val & 0x0F).to_integer                                  a_digit := (val & 0x0F).to_integer
426                                  Result.put (a_digit.to_hex_character, i)                                  Result.put (a_digit.to_hex_character, i)
427                                  val := val |>> 4                                  val := val |>> 4
428                                  i := i - 1                                  i := i - 1
429                          end                          end
430                  ensure                  ensure
# Line 424  feature -- Conversion Line 441  feature -- Conversion
441                  do                  do
442                          tmp := item.to_integer                          tmp := item.to_integer
443                          if tmp <= 9 then                          if tmp <= 9 then
444                                  Result := (tmp + ('0').code).to_character                                  Result := (tmp + ('0').code).to_character_8
445                          else                          else
446                                  Result := (('A').code + (tmp - 10)).to_character                                  Result := (('A').code + (tmp - 10)).to_character_8
447                          end                          end
448                  ensure                  ensure
449                          valid_character: ("0123456789ABCDEF").has (Result)                          valid_character: ("0123456789ABCDEF").has (Result)
# Line 434  feature -- Conversion Line 451  feature -- Conversion
451    
452          to_character: CHARACTER is          to_character: CHARACTER is
453                          -- Returns corresponding ASCII character to `item' value.                          -- Returns corresponding ASCII character to `item' value.
454                    obsolete
455                            "Use `to_character_8' instead."
456                    require
457                            valid_character: is_valid_character_8_code
458                    do
459                            Result := item.to_character_8
460                    end
461    
462            to_character_8: CHARACTER_8 is
463                            -- Associated character in 8 bit version.
464                    require
465                            valid_character: is_valid_character_8_code
466                    do
467                            Result := item.to_character_8
468                    end
469    
470            to_character_32: CHARACTER_32 is
471                            -- Associated character in 32 bit version.
472                  require                  require
473                          valid_character: is_valid_character_code                          valid_character: is_valid_character_32_code
474                  do                  do
475                          Result := item.to_character                          Result := item.to_character_32
476                  end                  end
477    
478  feature -- Bit operations  feature -- Bit operations

Legend:
Removed from v.91476  
changed lines
  Added in v.91477

  ViewVC Help
Powered by ViewVC 1.1.23