chaokunyang commented on code in PR #3021:
URL: https://github.com/apache/fory/pull/3021#discussion_r2617320494
##########
java/fory-core/src/main/java/org/apache/fory/type/Descriptor.java:
##########
@@ -89,6 +89,8 @@ public static void clearDescriptorCache() {
private final Method writeMethod;
private ForyField foryField;
private boolean nullable;
+ // trackingRef should only be true if explicitly set to true via
@ForyField(ref=true)
+ // If no annotation or ref not specified, trackingRef stays false and
type-based tracking applies
private boolean trackingRef;
Review Comment:
For `ref`:
1. if ref tracking is diabled globally, then ref is always false for all
fields values
2. if ref tracking is enabled, then @ForyField has higher priority
3. otherwise, fallback to default ref tracking logic, use `needToWriteRef`
instead
For `nullable`:
1. if `@ForyField` is configured, it has higher priority
2. if we support `NotNull/Nullable` annotation, thsi also has higher priority
3. othewise, fallback to default logic(only primitive types is not null).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]