Add support for parameter attributes (#48)

* 1

* 2

* 3

* .

* x
This commit is contained in:
Stef Heyenrath
2022-12-17 11:28:16 +01:00
committed by GitHub
parent 02c0c7f4d2
commit a1a283c8bb
17 changed files with 136 additions and 65 deletions
@@ -1,5 +1,3 @@
using System.IO;
using System.Linq;
using CSharp.SourceGenerators.Extensions;
using CSharp.SourceGenerators.Extensions.Models;
using CultureAwareTesting.xUnit;
@@ -60,7 +60,11 @@ namespace ProxyInterfaceSourceGeneratorTests.Source
System.Threading.Tasks.Task<string?> Method3Async();
void CreateInvokeHttpClient(int i = 5, string? appId = null, System.Collections.Generic.IReadOnlyDictionary<string, string> metadata = null, System.Threading.CancellationToken token = default(System.Threading.CancellationToken));
void CreateInvokeHttpClient(int i = 5, string? appId = null, System.Collections.Generic.IReadOnlyDictionary<string, string>? metadata = null, System.Threading.CancellationToken token = default(System.Threading.CancellationToken));
bool TryParse(string s1, [System.Diagnostics.CodeAnalysis.NotNullWhenAttribute(true)] params int[]? ii);
bool TryParse(string s2, [System.Diagnostics.CodeAnalysis.NotNullWhenAttribute(true)] out int? i);
@@ -135,15 +135,32 @@ namespace ProxyInterfaceSourceGeneratorTests.Source
return result__57684656;
}
public void CreateInvokeHttpClient(int i = 5, string? appId = null, System.Collections.Generic.IReadOnlyDictionary<string, string> metadata = null, System.Threading.CancellationToken token = default(System.Threading.CancellationToken))
public void CreateInvokeHttpClient(int i = 5, string? appId = null, System.Collections.Generic.IReadOnlyDictionary<string, string>? metadata = null, System.Threading.CancellationToken token = default(System.Threading.CancellationToken))
{
int i_ = i;
string? appId_ = appId;
System.Collections.Generic.IReadOnlyDictionary<string, string> metadata_ = metadata;
System.Collections.Generic.IReadOnlyDictionary<string, string>? metadata_ = metadata;
System.Threading.CancellationToken token_ = token;
_Instance.CreateInvokeHttpClient(i_, appId_, metadata_, token_);
}
public bool TryParse(string s1, [System.Diagnostics.CodeAnalysis.NotNullWhenAttribute(true)] params int[]? ii)
{
string s1_ = s1;
int[]? ii_ = ii;
var result__1226565302 = _Instance.TryParse(s1_, ii_);
return result__1226565302;
}
public bool TryParse(string s2, [System.Diagnostics.CodeAnalysis.NotNullWhenAttribute(true)] out int? i)
{
string s2_ = s2;
int? i_;
var result__1226565302 = _Instance.TryParse(s2_, out i_);
i = i_;
return result__1226565302;
}
@@ -6,6 +6,7 @@
<LangVersion>10.0</LangVersion>
<Nullable>enable</Nullable>
<Configurations>Debug;Release;DebugAttach</Configurations>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
@@ -1,4 +1,5 @@
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
using System.Threading;
using System.Threading.Tasks;
@@ -103,8 +104,20 @@ namespace ProxyInterfaceSourceGeneratorTests.Source
return Task.FromResult((string?)"");
}
public void CreateInvokeHttpClient(int i = 5, string? appId = null, IReadOnlyDictionary<string, string> metadata = null, CancellationToken token = default)
public void CreateInvokeHttpClient(int i = 5, string? appId = null, IReadOnlyDictionary<string, string>? metadata = null, CancellationToken token = default)
{
}
public bool TryParse(string s1, [NotNullWhen(true)]params int[]? ii)
{
ii = null;
return false;
}
public bool TryParse(string s2, [NotNullWhen(true)] out int? i)
{
i = 4;
return true;
}
}
}