📎 Webclip
OpenStruct no Ruby 2.0
A versão RC1 do Ruby 2.0.0 trouxe mudanças na classe OpenStruct que ampliam a forma de acessar e criar seus atributos. O texto destaca o uso por índice, a definição por índice, a conversão para Hash e a possibilidade de instanciar uma OpenStruct a partir de outra OpenStruct ou de um Struct.
Fichamento#
- OpenStruct permite criar uma estrutura de dados com atributos definidos de forma arbitrária.
- Ao instanciar com um Hash, cada chave gera um atributo equivalente.
- No Ruby 2.0, além dos readers, a OpenStruct passou a aceitar acesso por
[]com chaves como:namee"name". - O método
OpenStruct#[]=permite definir atributos por índice. - O método
OpenStruct#to_hpassa a retornar a representação da OpenStruct como Hash; no Ruby 1.9 ele retornavanil. OpenStruct.newagora aceita instâncias deOpenStructeStruct.- O texto associa essa mudança ao interesse de quem gosta de
HashWithIndifferentAccessno ActiveSupport.
