PowerArgs.CommandLineAction.IsActionImplementation C# (CSharp) Method

IsActionImplementation() static private method

static private IsActionImplementation ( MethodInfo method ) : bool
method System.Reflection.MethodInfo
return bool
        internal static bool IsActionImplementation(MethodInfo method)
        {
            return method.HasAttr<ArgActionMethod>();
        }

Same methods

CommandLineAction::IsActionImplementation ( PropertyInfo property ) : bool

Usage Example

Beispiel #1
0
        private List <CommandLineAction> FindCommandLineActions(Type t)
        {
            var knownAliases = new List <string>();

            foreach (var argument in Arguments)
            {
                knownAliases.AddRange(argument.Aliases);
            }

            BindingFlags flags = BindingFlags.Static | BindingFlags.Instance | BindingFlags.Public;

            var actions = (from p in t.GetProperties(flags)
                           where  CommandLineAction.IsActionImplementation(p)
                           select CommandLineAction.Create(p, knownAliases)).ToList();

            if (t.HasAttr <ArgActionType>())
            {
                t = t.Attr <ArgActionType>().ActionType;
            }

            foreach (var action in t.GetMethods(flags).Where(m => CommandLineAction.IsActionImplementation(m)).Select(m => CommandLineAction.Create(m, knownAliases.ToList())))
            {
                var matchingPropertyBasedAction = actions.Where(a => a.Aliases.First() == action.Aliases.First()).SingleOrDefault();
                if (matchingPropertyBasedAction != null)
                {
                    continue;
                }
                actions.Add(action);
            }

            return(actions);
        }
All Usage Examples Of PowerArgs.CommandLineAction::IsActionImplementation