[
Lists Home |
Date Index |
Thread Index
]
It turns out to be more complicated than I thought. Tracing deeper I see
that the statement and arguments are cloned before being executed, but the
clone method changes the value of the passed-in argument to one of the
default value.
It's a little odd how the clone operation works. Since the clone method
can't rely on the original object having implemented Cloneable, it writes
the original object out as an Expression, and then evaluates that Expression
as the cloned object. Clever, if it only worked-- the value as read is not
the value as (should be) written.
I wonder if anybody here has been down this primrose path before?
|