Layout.FromMethod without boxing #5580
Merged
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.



Resolves #5575 and Resolves #5262
Layout<T>can now be constructed to use different typed-value-engines:Layout<T>becomes its own type-value-engine (To reduce memory allocations)Layout<T>creates a type-value-engine that can parse value from Layout-result.Layout<T>creates a type-value-engine that returns value directly from Func (without boxing).ValueTypeLayoutInfoto not rely on creating genericLayout<T>. Probably need to re-visit theValueType-property andDefaultValue-property for AOT-support.Layout<T>, but instead re-uses the value-type-engine for Dynamic Layout.