[FEATURE]: Create Labs Project for Ideas and Samples#72
Merged
MattEdwardsWaggleBee merged 7 commits intoApr 17, 2025
Merged
Conversation
[skip ci]
Introduces a new "lab" project for experimenting with expressions. Adds a FetchExpression for making HTTP requests within expression trees, leveraging IHttpClientFactory for named client support and header/content customization. Includes JsonExpression and JsonPathExpression for deserializing JSON data into specified types or extracting data using JSON Path, integrating with JsonSerializerOptions from the service provider.
…r-ideas-and-samples
Introduces `Map` and `Reduce` expressions for transforming collections within expression trees, enabling advanced data manipulation. Adds extension methods to `FetchExpression` to simplify reading response content as JSON, text, bytes, or stream, enhancing web request processing capabilities.
MattEdwardsWaggleBee
added a commit
that referenced
this pull request
May 9, 2025
* [FEATURE]: Add Support for IEnumerable Yield (#62) * Add Support for IEnumerable Yield (#62) * Added new YieldStateMachineBuilder to handle IEnumerable * Refactored lowering into subclasses * Refactored StateMachineContext * Initial document and tests for enumerable For, Foreach, While --------- Co-authored-by: Matt Edwards <matthew.edwards@wagglebee.net> * Renamed some of the class to reflect being Enumerable vs yield * clean up and simplify documentation * Fix issue with preferInterpretation MS has a bug with TryFault and preferInterpretation, so switched to tracking returns and using a Try/Finally * clean up * Clean up test and submit bug to dotnet/runtime * Previous version was 'v1.1.4'. Version now 'v1.1.5'. * [FEATURE]: Add Support for Dependency Injection and Configuration (#67) - New Inject<T>() Expression to help with DI - New ConfigurationValue<T>() Expression to help with getting Config values - New Compile extension to help support DI and Configuration --------- Co-authored-by: Matt Edwards <matthew.edwards@wagglebee.net> * updates for passing type * Updated code formatting to match rules in .editorconfig * Expose properties for Inject and Config * Add Delegate based service provider Compile * update readme * Updated code formatting to match rules in .editorconfig * [FEATURE]: Create Labs Project for Ideas and Samples (#72) * Fix issue with using and double variable resolver * Introduces a new "lab" project for experimenting with expressions. Adds a FetchExpression for making HTTP requests within expression trees, leveraging IHttpClientFactory for named client support and header/content customization. Includes JsonExpression and JsonPathExpression for deserializing JSON data into specified types or extracting data using JSON Path, integrating with JsonSerializerOptions from the service provider. * Adds expression extensions for data manipulation Introduces `Map` and `Reduce` expressions for transforming collections within expression trees, enabling advanced data manipulation. Add extension methods to `FetchExpression` to simplify reading response content as JSON, text, bytes, or stream, enhancing web request processing capabilities. --------- Co-authored-by: Matt Edwards <matthew.edwards@wagglebee.net> * Previous version was 'v1.1.5'. Version now 'v1.2.0'. * Simplifies expression compilation. Modifies the expression compilation process to directly return the compiled result, removing the unnecessary wrapping of the expression in a `Func<>`. This enhancement supports all delegates and prevents unnecessary casting or wrapping. --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: MattEdwardsWaggleBee <MattEdwardsWaggleBee@users.noreply.github.com> Co-authored-by: github-actions <github-actions@github.com>
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.
Original issue description
Tell us about your idea
Create a Labs for expression that might be useful, but are not ready to be moved into the main library
Anything else?
No response
closes #71