FastQuant.ParameterList.Add C# (CSharp) Méthode

Add() public méthode

public Add ( Parameter parameter ) : void
parameter Parameter
Résultat void
        public void Add(Parameter parameter) => _parameters.Add(parameter);

Usage Example

Exemple #1
0
        public ParameterList GetStrategyParameters(string name, object obj)
        {
            var list = new ParameterList {
                Name = name
            };
            var pred = new Predicate <Attribute>(a =>
            {
                var t = a.GetType();
                return(t.FullName.Contains("ComponentModel") && t.Name != "PropertyTabAttribute" && t.Name != "ToolboxItemAttribute");
            });
            var properties = obj.GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic).Where(p => p.GetCustomAttributes(typeof(ParameterAttribute), true).Any());

            foreach (var param in properties.Select(p => new Parameter(p.Name, p.GetValue(obj), p.PropertyType.AssemblyQualifiedName, p.GetCustomAttributes().Where(a => pred(a)).ToArray())))
            {
                list.Add(param);
            }

            var fields = obj.GetType().GetFields(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic).Where(f => f.GetCustomAttributes(typeof(ParameterAttribute), true).Any());

            foreach (var param in fields.Select(f => new Parameter(f.Name, f.GetValue(obj), f.FieldType.AssemblyQualifiedName, f.GetCustomAttributes().Where(a => pred(a)).ToArray())))
            {
                list.Add(param);
            }

            var methods = obj.GetType().GetMethods(BindingFlags.DeclaredOnly | BindingFlags.Instance | BindingFlags.Public).Where(m => m.GetCustomAttributes(typeof(StrategyMethodAttribute), true).Any() && m.GetParameters().Length == 0);

            foreach (var m in methods)
            {
                list.Methods.Add(m.Name);
            }

            return(list);
        }
All Usage Examples Of FastQuant.ParameterList::Add