[Ruby] Re[2]: [Ruby] Послать массив в TCPsocket в HEX виде - Bug ???????????
Alexander Bokovoy
a.bokovoy at sam-solutions.net
Thu Jan 9 14:27:42 MSK 2003
On Thu, Jan 09, 2003 at 01:10:30PM +0200, Vladyslav wrote:
> Hello Alexander,
>
> Thursday, January 9, 2003, 11:55:18 AM, you wrote:
>
>
> Спасибо, после нескольких пасов помогло! :-)
>
> Но ...
> Оказалось что у меня в массиве были не только Fixnum но и String.
> Я попытался привести их всех к Fixnum и здесь я наткнулся на странное:
>
> irb(main):056:0> s = [ 1, 2, 3 ]
> [1, 2, 3]
> irb(main):057:0> t = [ 4, 5, 6, [7, 8] ]
> [4, 5, 6, [7, 8]]
> irb(main):058:0> a = [ s, t, 9, 10 ]
> [[1, 2, 3], [4, 5, 6, [7, 8]], 9, 10]
> irb(main):059:0> a.flatten
> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
> irb(main):060:0> a[0].type
> Array
>
> Такое впечатление что после метода Flatten наследуются родительские
> типы.
>
> Баг ?
a.flatten[0].assбудет правильнее. Вы же посылкой сообщения #flatten не
изменили объект a, а получили в результате новый объект. После этого
обращаетесь к неизмененному a.
Да и #type лучше заменить на #class, первого скоро не будет в живых.
--
/ Alexander Bokovoy
---
"What I've done, of course, is total garbage."
-- R. Willard, Pure Math 430a
More information about the Ruby
mailing list