optimized trans_to_datum::auto_borrow_obj code generation in case some trivial cases where simple copying can be applied
minor Type::opaque_trait code cleanup
will not copy trait_callee on stack if it's source expr is a plain borrowed ref