Skip to content

Commit

Permalink
Use ValueArray as inline storage in MethodCallExpression nodes.
Browse files Browse the repository at this point in the history
  • Loading branch information
VSadov committed Oct 27, 2021
1 parent 4040fad commit 88c2c84
Show file tree
Hide file tree
Showing 6 changed files with 93 additions and 321 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -217,4 +217,7 @@
<Reference Include="System.Runtime.Extensions" />
<Reference Include="System.Threading" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="$(LibrariesProjectRoot)System.Runtime.CompilerServices.Unsafe\src\System.Runtime.CompilerServices.Unsafe.ilproj" />
</ItemGroup>
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -312,6 +312,8 @@ internal override BlockExpression Rewrite(ReadOnlyCollection<ParameterExpression
}
}

// TODO: the whole family of classes can be simplified by using inline storage.

internal sealed class Block4 : BlockExpression
{
private object _arg0; // storage for the 1st argument or a read-only collection. See IArgumentProvider
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -725,6 +725,8 @@ internal TypedDynamicExpression3(Type retType, Type delegateType, CallSiteBinder
public sealed override Type Type { get; }
}

// TODO: the whole family of classes can be simplified by using inline storage.

internal class DynamicExpression4 : DynamicExpression, IArgumentProvider
{
private object _arg0; // storage for the 1st argument or a read-only collection. See IArgumentProvider for more info.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -344,6 +344,8 @@ internal override InvocationExpression Rewrite(Expression lambda, Expression[]?
}
}

// TODO: the whole family of classes can be simplified by using inline storage.

internal sealed class InvocationExpression5 : InvocationExpression
{
private object _arg0; // storage for the 1st argument or a read-only collection. See IArgumentProvider
Expand Down
Loading

0 comments on commit 88c2c84

Please sign in to comment.