public EquationPlaceHolderFilterItem(EquationPlaceHolder placeHolder, string source)
        {
            this.PlaceHolder = placeHolder;
            this.Source      = source;

            this.Parse();
        }
        public static List <EquationPlaceHolder> ParsePlaceHolders(string equationString)
        {
            List <EquationPlaceHolder> result = new List <EquationPlaceHolder>();

            string[] parts = equationString.Split('[');

            foreach (string part in parts)
            {
                if (!part.Contains("]"))
                {
                    continue;
                }

                string placeHolder = part.Split(']')[0];

                int index;
                if (placeHolder == "" || placeHolder.StartsWith("var_") || int.TryParse(placeHolder, out index))
                {
                    continue;
                }

                EquationPlaceHolder equationPlaceHolder = new EquationPlaceHolder(
                    null,
                    placeHolder
                    );

                result.Add(equationPlaceHolder);
            }

            return(result);
        }
        private void ParsePlaceHolders()
        {
            string[] parts = this.EquationString.Split('[');

            foreach (string part in parts)
            {
                if (!part.Contains("]"))
                {
                    continue;
                }

                string placeHolder = part.Split(']')[0];

                int index;
                if (placeHolder == "" || placeHolder.StartsWith("var_") || int.TryParse(placeHolder, out index))
                {
                    continue;
                }

                EquationPlaceHolder equationPlaceHolder = new EquationPlaceHolder(
                    this,
                    placeHolder
                    );

                if (!this.Values.ContainsKey(placeHolder))
                {
                    this.Values.Add(placeHolder, equationPlaceHolder);
                }
            }
        }
 public EquationPlaceHolderFilterCategory(
     EquationPlaceHolder placeHolder,
     string source,
     EquationPlaceHolderFilterOperator op
     )
     : base(placeHolder, source)
 {
     this.Operator = op;
 }
 public EquationPlaceHolderFilter(EquationPlaceHolder placeHolder, string source)
     : base(placeHolder, source)
 {
 }