Cómo heredar de NilClass o cómo simular una función similar

Solo quiero usar el Patrón de diseño de objetos nulos, pero descubrí que puedo heredar de NilClass.

Puedo escribir un método "nulo?" y devuelve falso, pero ¿y si el usuario escribe el código a continuación

if null_object 
  puts "shouldn't be here"
end

Para aclarar lo que intento hacer es:

record = DB.find(1)
# if it can not find record 1, the bellow code should not raise exception
record.one_attr 
# and what's more
if record 
  puts "shouldn't be here"
end
# I don't want to override all NilClass

Respuestas a la pregunta(3)

Su respuesta a la pregunta