On Mon, 2006-03-20 at 15:58 +0900, Mike Austin wrote:
> I have certain variables that are 'properties' and I keep track of them in a 
> class instance variable called @fields, and each subclass may have it's own 
> fields.  I want to navigate through the hierarchy and go through each list, is 
> something like this possible?:
> 
> class View
>    @fields = [:origin]
>    def View.fields()
>      super.fields()
>      @fields
>    end
>    attr :origin
> end
> 
> class Button < View
>    @fields = [:caption]
>    attr :caption
> end
> 
> View.fields() actually finds :cation when I do Button.fields(), but super does 
> not work.  Or maybe there is another way to do this?
> 

It seems to work if you replace View.fields with:

def View.fields
  @fields + (superclass.respond_to?(:fields) ? superclass.fields : [])
end

But this seems like a bit of a strange setup to me...

-- 
Ross Bamford - rosco / roscopeco.REMOVE.co.uk