FastExpressionCompiler
FastExpressionCompiler copied to clipboard
Remove GetTypeInfo calls
This PR removes GetTypeInfo calls, which improves performance
@Bykiev Thank you for removing the TypeInfos. Good riddance. I will merge it later when I've done with #468.
Ok, let's merge it now, when I am to start the work over for #468.
@Bykiev Builds are failed, could you check.
Can you please help with running tests in FEC in VS? I see there is TestRunner project, but how to run them with VS? There is no tests in VS test explorer
Converted into draft for now...
It seems I was wrong type.GetProperties(BindingFlags.DeclaredOnly); is equal to these binding flags: BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.DeclaredOnly | BindingFlags.NonPublic and if all of them is specified the performance will be about the same. To gain some more performance specific flags should be specified.
@Bykiev Yeah, I would look later.
To run the tests there are 2 TestRunner projects.
You can run the build.bat to run everything which mimics the CI.
Or run more quickish bt.bat and b.bat to run the tests only on the selected platforms.
@dadhi, should be ok now, can you please rerun tests on CI?
@Bykiev Let's keep this PR open, because don't like that there is no performance gain, but the code size is even bigger. At least, to make it concise, the flags can be combined once and put into constants. I will check later after #468.
The performance still should be better, let's measure it
Outdated. Sorry to close.