Draft: Try to use object constructors for complex property values where possible#162
Draft
tterrag1098 wants to merge 7 commits intojburzynski:masterfrom
Draft
Draft: Try to use object constructors for complex property values where possible#162tterrag1098 wants to merge 7 commits intojburzynski:masterfrom
tterrag1098 wants to merge 7 commits intojburzynski:masterfrom
Conversation
8fd1253 to
e6b853c
Compare
Also rename nuget ID to CIERA namespace
5af7a87 to
ed29752
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Something I ran into while trying to convert a project to use this was that complex valued types would often be given long JSON values as their defaults, when what I really expected was simply
new Foo(). Additionally some complex objects, such as those with fields only in the parent's parent class, would generate invalid JSON.This is a test of a new way to try to detect if a complex property's default value is equivalent to the value returned by its default constructor. If so, it will simply use
new TheType()in the output typescript.This is a draft as I'm not sure if you even want this feature, plus I'm sure it's missing some edge cases, such as what happens when the property type is not an exported class. Let me know your thoughts!