The global value true
is the only instance of class
TrueClass
and represents a logically true value in boolean
expressions. The class provides operators allowing true
to be
used in logical expressions.
And—Returns false
if obj is nil
or
false
, true
otherwise.
static VALUE true_and(VALUE obj, VALUE obj2) { return RTEST(obj2)?Qtrue:Qfalse; }
Exclusive Or—Returns true
if obj is nil
or false
, false
otherwise.
static VALUE true_xor(VALUE obj, VALUE obj2) { return RTEST(obj2)?Qfalse:Qtrue; }
The string representation of true
is “true”.
static VALUE true_to_s(VALUE obj) { return rb_usascii_str_new2("true"); }
Or—Returns true
. As anObject is an argument to a method call, it is
always evaluated; there is no short-circuit evaluation in this case.
true | puts("or") true || puts("logical or")
produces:
or
static VALUE true_or(VALUE obj, VALUE obj2) { return Qtrue; }
Commenting is here to help enhance the documentation. For example, sample code, or clarification of the documentation.
If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.
If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.