private void AddNamedActions()

in src/CTA.Rules.Analysis/RulesAnalysis.cs [584:636]


        private void AddNamedActions(FileActions fileAction, NodeToken token, string identifier, TextSpan textSpan)
        {

            fileAction.ClassDeclarationActions.UnionWith(token.ClassDeclarationActions
                .Select(c => new ClassDeclarationAction()
                {
                    Key = identifier,
                    Value = c.Value,
                    Description = c.Description,
                    Name = c.Name,
                    Type = c.Type,
                    TextSpan = textSpan,
                    ActionValidation = c.ActionValidation,
                    ClassDeclarationActionFunc = c.ClassDeclarationActionFunc
                }));

            fileAction.InterfaceDeclarationActions.UnionWith(token.InterfaceDeclarationActions
                .Select(c => new InterfaceDeclarationAction()
                {
                    Key = identifier,
                    Value = c.Value,
                    Name = c.Name,
                    Type = c.Type,
                    Description = c.Description,
                    TextSpan = textSpan,
                    ActionValidation = c.ActionValidation,
                    InterfaceDeclarationActionFunc = c.InterfaceDeclarationActionFunc
                }));

            fileAction.MethodDeclarationActions.UnionWith(token.MethodDeclarationActions
                .Select(c => new MethodDeclarationAction()
                {
                    Key = identifier,
                    Value = c.Value,
                    Description = c.Description,
                    Name = c.Name,
                    Type = c.Type,
                    TextSpan = textSpan,
                    ActionValidation = c.ActionValidation,
                    MethodDeclarationActionFunc = c.MethodDeclarationActionFunc
                }));

            if (fileAction.ClassDeclarationActions.Any() || fileAction.InterfaceDeclarationActions.Any() || fileAction.MethodDeclarationActions.Any() || fileAction.ObjectCreationExpressionActions.Any())
            {
                var nodeToken = token.Clone();
                nodeToken.TextSpan = textSpan;
                nodeToken.AllActions.ForEach(action =>
                {
                    action.Key = identifier;
                });
                fileAction.NodeTokens.Add(nodeToken);
            }
        }