private static ImmutableDictionary <DiagnosticAnalyzer, ImmutableDictionary <TLanguageKindEnum, ImmutableArray <SyntaxNodeAnalyzerAction <TLanguageKindEnum> > > > CreateNodeActionsByKind(
                AnalyzerActions analyzerActions)
            {
                var nodeActions = analyzerActions.GetSyntaxNodeActions <TLanguageKindEnum>();
                ImmutableDictionary <DiagnosticAnalyzer, ImmutableDictionary <TLanguageKindEnum, ImmutableArray <SyntaxNodeAnalyzerAction <TLanguageKindEnum> > > > analyzerActionsByKind;

                if (!nodeActions.IsEmpty)
                {
                    var nodeActionsByAnalyzers = nodeActions.GroupBy(a => a.Analyzer);
                    var builder = ImmutableDictionary.CreateBuilder <DiagnosticAnalyzer, ImmutableDictionary <TLanguageKindEnum, ImmutableArray <SyntaxNodeAnalyzerAction <TLanguageKindEnum> > > >();
                    foreach (var analyzerAndActions in nodeActionsByAnalyzers)
                    {
                        ImmutableDictionary <TLanguageKindEnum, ImmutableArray <SyntaxNodeAnalyzerAction <TLanguageKindEnum> > > actionsByKind;
                        if (analyzerAndActions.Any())
                        {
                            actionsByKind = AnalyzerExecutor.GetNodeActionsByKind(analyzerAndActions);
                        }
                        else
                        {
                            actionsByKind = ImmutableDictionary <TLanguageKindEnum, ImmutableArray <SyntaxNodeAnalyzerAction <TLanguageKindEnum> > > .Empty;
                        }

                        builder.Add(analyzerAndActions.Key, actionsByKind);
                    }

                    analyzerActionsByKind = builder.ToImmutable();
                }
                else
                {
                    analyzerActionsByKind = ImmutableDictionary <DiagnosticAnalyzer, ImmutableDictionary <TLanguageKindEnum, ImmutableArray <SyntaxNodeAnalyzerAction <TLanguageKindEnum> > > > .Empty;
                }

                return(analyzerActionsByKind);
            }