コード例 #1
0
        public List <RevitFunctionModel> Analize(string formula)
        {
            if (!formula.Contains(openingBracket) || !formula.Contains(closingBracket))
            {
                var function = new RevitFunctionModel(RevitEnums.FunctionType.SimpleFunction);
                function.AddArgument(formula);

                return(new List <RevitFunctionModel>()
                {
                    function
                });
            }

            List <RevitFunctionModel>          revitFunctionsInFormula = GetFunctionsInFormula(formula);
            List <RevitFunctionsPositionModel> bracketsPosList         = GetBracketsPosList(formula);

            CountCommas(formula, revitFunctionsInFormula);

            return(AssignFunctions(bracketsPosList, revitFunctionsInFormula));
        }