예제 #1
0
        private void CacheParameters()
        {
            List <IRequirement> reqList = new List <IRequirement>();

            parameters.Clear();
            foreach (ParameterInfo param in constructor.GetParameters())
            {
                parameters[param] = new ParameterRequirement(this, param);
            }
        }
예제 #2
0
        /// <summary>
        /// Add a named parameter
        /// </summary>
        /// <param name="name"></param>
        /// <param name="required">the name of the param</param>
        /// <returns>the parameter</returns>
        public Parameter AddNamedParameter(string name, ParameterRequirement required)
        {
            if (name == null)
            {
                throw new System.ArgumentNullException("name");
            }

            check_valid_param_name(name);

            var param = new Parameter(name, ParameterType.Named, required);

            Add(param);
            return(param);
        }
예제 #3
0
        private void init(ParameterType argtype, string name, ParameterRequirement required)
        {
            this._parameter_type   = argtype;
            this.m_possible_values = null;

            if (name == null)
            {
                throw new System.ArgumentNullException("name", "cannot be null");
            }

            if (name.Length == 0)
            {
                throw new Isotope.CommandLine.GrammarException("Name for argument must be at least one char");
            }

            m_name         = name;
            m_required     = required;
            m_string_value = null;
        }
예제 #4
0
        /// <summary>
        /// Add a named parameter
        /// </summary>
        /// <param name="name"></param>
        /// <param name="required">the name of the param</param>
        /// <returns>the parameter</returns>
        public Parameter AddNamedParameter(string name, ParameterRequirement required)
        {
            if (name == null)
            {
                throw new System.ArgumentNullException("name");
            }

            check_valid_param_name(name);

            var param = new Parameter(name, ParameterType.Named, required);
            Add(param);
            return param;
        }
예제 #5
0
 public Parameter(string name, ParameterType argtype, ParameterRequirement required)
 {
     init(argtype, name, required);
 }