RGtkObject
identifies an external object as being owned by RGtk.
Practically, it allows convenience operators to be specified for any external object."[[.RGtkObject"(x, field)
"$.RGtkObject"(x, method)
"==.RGtkObject"(x, y)
RGtkObject
to which the method or field belongs or the left hand of a comparison[[
and $
both expand to an RGtk function that accesses
external objects. The [[
operator retrieves a field value from an external structure
by expanding objectOfClassName[[fieldName]]
to classNameGetFieldName()
.
External "methods" are expanded by the $
operator to form
classNameMethodName(objectOfClassName, ...)
from the Java-like
objectOfClassName$methodName(...)
. The long and short mechanisms give
the same result, but the shortcut is obviously more convenient.The ==
operator compares two RGtkObject
s on the basis of their internal pointer value.
This should rarely be useful for users.