GitHub user mchernyakov added a comment to the discussion: Java: maximum performance with minimum overhead
@chaokunyang I checked the code and have some questions: 1) I see that `ReplaceResolveSerializer` is assigned to `ImmutableIntArray` during expression building (`org.apache.fory.builder.BaseObjectCodecBuilder#getOrCreateSerializer`) as well as in `ClassResolver#getSerializerClass(Class<?> cls, boolean codegen)` (invoked by JIT?)-- that means I would need to refactor the method as well and choose the right constructor based on the field type (in my case `final`) + propagate the boolean flag or how that should be? 2) inside `org.apache.fory.builder.BaseObjectCodecBuilder#getOrCreateSerializer` there is already a branch which takes `final` into account https://github.com/apache/fory/blob/main/java/fory-core/src/main/java/org/apache/fory/builder/BaseObjectCodecBuilder.java#L660 -- did you mean I should add the boolean here as 2nd parameter to "getRawSerializer"? 3) What about instead of having 2 constructors for `ReplaceResolveSerializer` having just another class --`FieldReplaceResolveSerializer` to handle such cases? wdyt? 4) I register my classes, but still there are no branches that led to `org.apache.fory.serializer.AbstractObjectSerializer#buildFieldInfos` -- in which cases is it being called? GitHub link: https://github.com/apache/fory/discussions/2786#discussioncomment-14798580 ---- This is an automatically sent email for [email protected]. To unsubscribe, please send an email to: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
