使用[NotNullWhen(true)]标记「TryGetParamDefine」方法
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
|
using System.Diagnostics.CodeAnalysis;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
@@ -14,7 +15,7 @@ namespace Deedy.Activity
|
|||||||
public class ActionTemplateCollection : ObservableCollection<DataTemplate>
|
public class ActionTemplateCollection : ObservableCollection<DataTemplate>
|
||||||
{
|
{
|
||||||
public ActionTemplateCollection() { }
|
public ActionTemplateCollection() { }
|
||||||
public bool TryGetTemplate(Type type, out DataTemplate template)
|
public bool TryGetTemplate(Type type, [NotNullWhen(true)] out DataTemplate template)
|
||||||
{
|
{
|
||||||
DataTemplate dataTemplate = new DataTemplate(typeof(IActionElement));
|
DataTemplate dataTemplate = new DataTemplate(typeof(IActionElement));
|
||||||
bool result = false;
|
bool result = false;
|
||||||
|
|||||||
@@ -16,9 +16,9 @@ namespace Deedy.Activity
|
|||||||
public class ParamDefineCollection : InitialSortedObservableCollection<ParamDefineAttribute>
|
public class ParamDefineCollection : InitialSortedObservableCollection<ParamDefineAttribute>
|
||||||
{
|
{
|
||||||
internal ParamDefineCollection() { }
|
internal ParamDefineCollection() { }
|
||||||
public bool TryGetParamDefine(string name, [NotNull] out ParamDefineAttribute value)
|
public bool TryGetParamDefine(string name, [NotNullWhen(true)] out ParamDefineAttribute? value)
|
||||||
{
|
{
|
||||||
ParamDefineAttribute pda = new();
|
ParamDefineAttribute? pda = null;
|
||||||
bool result = false;
|
bool result = false;
|
||||||
|
|
||||||
foreach (var item in this)
|
foreach (var item in this)
|
||||||
|
|||||||
@@ -111,11 +111,11 @@ namespace Deedy.Activity
|
|||||||
var pda = prop.GetCustomAttribute<ParamDefineAttribute>();
|
var pda = prop.GetCustomAttribute<ParamDefineAttribute>();
|
||||||
if (pda != null)
|
if (pda != null)
|
||||||
{
|
{
|
||||||
pda.Name = prop.Name;
|
|
||||||
if (element.ParamsMapping.TryGetParamDefine(prop.Name, out var value)) pda = value;
|
if (element.ParamsMapping.TryGetParamDefine(prop.Name, out var value)) pda = value;
|
||||||
else element.ParamsMapping.Add(pda);
|
else element.ParamsMapping.Add(pda);
|
||||||
value.Target = element;
|
pda.Name = prop.Name;
|
||||||
value.Property = prop;
|
pda.Target = element;
|
||||||
|
pda.Property = prop;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user