Return class as Integer

hello,

Can anyone tell me how to get a return class as Integer in ruby?

and to use Integer.new method with parameter as a number..

···

--
Posted via http://www.ruby-forum.com/.

hello,

Can anyone tell me how to get a return class as Integer in ruby?

and to use Integer.new method with parameter as a number.

Integer is an abstract class is Ruby. You want a Fixnum
(32 bit integers) or a Bignum (arbitrarily large integers).

Fixnum and Bignum are subclasses of Integer. Just use regular
decimal notation to 'generate' fixnums and bignums instances.

42.class

=> Fixnum

4200000000.class

=> Bignum

Gary Wright

···

On Jan 18, 2010, at 5:03 PM, Atheeq Pasha wrote:

Gary Wright wrote:

hello,

Can anyone tell me how to get a return class as Integer in ruby?

and to use Integer.new method with parameter as a number.

Integer is an abstract class is Ruby. You want a Fixnum
(32 bit integers) or a Bignum (arbitrarily large integers).

Fixnum and Bignum are subclasses of Integer. Just use regular
decimal notation to 'generate' fixnums and bignums instances.

42.class

=> Fixnum

4200000000.class

=> Bignum

Gary Wright

I don't think Fixnums are 32 bit.

irb(main):008:0> (1 << 30).class
=> Bignum
irb(main):009:0> (1 << 29).class
=> Fixnum
irb(main):010:0>

This is on Ubuntu Linux.

···

On Jan 18, 2010, at 5:03 PM, Atheeq Pasha wrote:

No, but they're close enough. There's a few bits used to identify some immediate values in the MRI implementation. On a 64-bit platform, a Fixnum will be used up to (1 << 62 - 1). The difference tends to matter only when you're trying to do true 32-bit (or 64-bit) things like cryptographic algorithms where bit shifts or bit rotations are defined on an exact word size.

-Rob

Rob Biedenharn http://agileconsultingllc.com
Rob@AgileConsultingLLC.com

···

On Jan 18, 2010, at 7:05 PM, lalawawa wrote:

Gary Wright wrote:

On Jan 18, 2010, at 5:03 PM, Atheeq Pasha wrote:

hello,

Can anyone tell me how to get a return class as Integer in ruby?

and to use Integer.new method with parameter as a number.

Integer is an abstract class is Ruby. You want a Fixnum
(32 bit integers) or a Bignum (arbitrarily large integers).
Fixnum and Bignum are subclasses of Integer. Just use regular
decimal notation to 'generate' fixnums and bignums instances.

42.class

=> Fixnum

4200000000.class

=> Bignum
Gary Wright

I don't think Fixnums are 32 bit.

irb(main):008:0> (1 << 30).class
=> Bignum
irb(main):009:0> (1 << 29).class
=> Fixnum
irb(main):010:0>

This is on Ubuntu Linux.

Yep. Thanks for expanding on my post. I just didn't feel like all those details were going to be helpful in the context of the original question.

Gary Wright

···

On Jan 18, 2010, at 7:17 PM, Rob Biedenharn wrote:

No, but they're close enough. There's a few bits used to identify some immediate values in the MRI implementation. On a 64-bit platform, a Fixnum will be used up to (1 << 62 - 1). The difference tends to matter only when you're trying to do true 32-bit (or 64-bit) things like cryptographic algorithms where bit shifts or bit rotations are defined on an exact word size.