[Ror-es] private static final

Josh | Vectrice
Tue Feb 28 07:06:14 GMT 2006


No te vale una varible de clase?
class MiClase
  @@reg_exp = /.*/
end
Aunque casi que para eso podrías utilizar una constante

----- Original Message ----- 
From: "Carlos Kozuszko" 
To: "La lista sobre Ruby On Rails (rubyonrails.com) en castellano" 

Sent: Saturday, February 25, 2006 8:59 PM
Subject: [Ror-es] private static final



Quiero lograr el mismo efecto que se logra al definir una variable con los
modificadores "private static final" en Java. Es decir, que el valor de la
variable se asigne sólo una vez al cargar la clase y no al crear cada
instancia de la misma.
Les pongo un ejemplo:

class Link < ActiveRecord::Base
  ## Devuelve el hash para la url
  def self.get_hash(url)
    raise Exception unless url && Regexp.new('http\://[a-zA-Z0-9\-\.]+\.
[a-zA-Z]{2,3}(/\S*)?').match(url)
    seed = 'mi semilla'
    return Digest::SHA1.hexdigest(seed + url)
  end
end

Yo quiero evitar que la Regexp que utilizo se cree cada vez que se ejecuta 
el
método get_hash. Quiero crear una variable estática que se inicialice una
sólo vez. Tal vez en este ejemplo la recarga de inicializar una expresión
regular por cada llamada no es tanta, pero tal vez en otras tareas esa
inicialización sea más pesada, es por eso que quiero aprender como hacerla.

Mis conocimientos son más de Rails en general que de Ruby en particular.

Muchas gracias!

-- 
Web Site: http://www.ckozus.com.ar
Blog: http://www.ckozus.com.ar/blog
Mis links: http://del.icio.us/ckozus
_______________________________________________
Ror-es mailing list