private static void InitializeCodeActionWithNestedActionsDataTypeThreadUnsafe()
{
System.Reflection.TypeInfo codeActionTypeInfo = typeof(CodeAction).GetTypeInfo();
var _codeActionWithNestedActionsDataTypeInfo = codeActionTypeInfo.GetDeclaredNestedType(CodeActionWithNestedActionsTypeName);
_codeActionWithNestedActionsType = _codeActionWithNestedActionsDataTypeInfo?.AsType();
if (_codeActionWithNestedActionsType == null)
{
return;
}
var codeActionWithNestedActionsConstructor = _codeActionWithNestedActionsDataTypeInfo.DeclaredConstructors.FirstOrDefault();
if (codeActionWithNestedActionsConstructor == null)
{
_codeActionWithNestedActionsType = null;
return;
}
var parameters = codeActionWithNestedActionsConstructor.GetParameters();
switch (parameters?.Length)
{
case 3:
_roslynOldApiUsed = true;
return;
case 4:
_roslynOldApiUsed = false;
InitializeCodeActionPriorityInstance(codeActionTypeInfo);
return;
default:
_codeActionWithNestedActionsType = null;
return;
}
}