If a set of documents need to be "approved" for external release - True means they're approved False means they've been reviewed and are not allowed to be released nil means they're not reviewed yes (and are not yet allowed to be released). V On Fri, 2005-02-11 at 13:31, Zach Dennis wrote: > Trans wrote: > > Trans wrote: > > > >>>I personally always define them as: > >>>def a? > >>> !!@a > >>>end > >> > >>Nice, thanks. > > > > > > Oops. Except that with Ruby it's not a simple as true and false, there > > is also nil. I think passing nil through unchanged is advantageous as > > it allows for yes, no, maybe (i.e. three state) value. > > > > I have failed to see when using three state's is needed. Could you > provide an example where "my_obj.a?" would behave different if nil/false > meant nil/maybe ? > > Thanks, > > Zach > >