Comments (2)
Hi, thanks for the detailed explanations!
- oneof names
I'm aware with issues that can arise from oneof names, which was also reported in #4. However, I'm still considering whether these cases should be handled. As you mentioned, this kind of proto definitions are against the basic conventions and will not likely be used. If we decide to take care of this, I think the solution will be to change the oneof sealed class names to ~Oneof (although it is breaking change) - special field name like xx_2nd -> I was not aware of this issue. I'll look into your PR soon!
from krotodc.
Regarding point 1, while it is certainly a significant matter, I cannot recall any instances where the oneof field name generated by protobuf-java was directly referenced in actual code. From what I understand, the existence of the 'tagCode' field (as seen in the example above) is primarily intended to ensure successful compilation. Since my knowledge of protobuf is limited, I cannot say for certain whether this implementation would disrupt existing code.
from krotodc.
Related Issues (14)
- Windows support HOT 6
- Enum argument can be null in Java, but exhaustive when contains no null branch HOT 3
- Problem when the name of a 'oneof' field matches the name of the message. HOT 1
- Generated defaultValue for TIMESTAMP is `LocalDateTime.MIN` HOT 1
- Tests not executed on `./gradlew test` HOT 1
- Add option to make message type fields always nullable HOT 5
- Reserved keywords are not escaped HOT 1
- Fix flaky WellKnownTypesTest junit tests HOT 2
- Future vision and stability HOT 2
- Deserialize sealed classes generated by oneof HOT 11
- Support generic serialization/deserialization methods for krotoDC dataclasses
- Using with `protoc` cli HOT 4
- Support Protobuf Java V4+
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from krotodc.