fix(union): Union.create() shouldn't ignore extra arguments#151
Merged
mattiamanzati merged 2 commits intomobxjs:masterfrom Jun 6, 2017
Merged
fix(union): Union.create() shouldn't ignore extra arguments#151mattiamanzati merged 2 commits intomobxjs:masterfrom
mattiamanzati merged 2 commits intomobxjs:masterfrom
Conversation
Contributor
Author
|
Link to #134 |
Contributor
|
Hi! Thanks for your PR! |
Contributor
Author
|
@mattiamanzati if I revert the change in IType, the following lines have to be changed by an assertion cd711b0#diff-7536e74658295b48b68949f5100a9989R37 Is that ok for your code foundation? Using assertion |
Contributor
|
Its fine for now, soon when all types will be complex by default, that will no more be an issue :) |
Contributor
Author
|
@mattiamanzati Pls check it again, thanks. |
Contributor
|
Now its fine! Thanks for your hard work! :) |
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.
Children in type Union could be any type, currently means it could be either
SimpleTypeorComplexTypeso the rest arguments such asenvironment, parent, subpathshouldn't be ignored in methodUnion.create().I would have tried to declare the method
createinto the typeIComplexTypesuch as:Then it might be a type
IComplexType<any, any>|IType<any, any>orIComplexType<any, any>|ISimpleType<any, any>could be used in the Class Union.But I'm confused with the current structure in MST:
So far so good, but why
ComplexType extends Typerather thanComplexType extends Type implements IComplexType? It doesn't make sense to me.Besides, if I use the union type like
IComplexType<any, any>|IType<any, any>orIComplexType<any, any>|ISimpleType<any, any>, I wouldn't know how to distinguish them in runtime so that I cannot give it a specific assertion.That's why finally I just changed the parameter declarations in
IType.create().