public RdlScriptLexer()
        {
            userInfo = new HashSet <string>(StaticLists.ArrayToFormattedList(StaticLists.UserList, "", ""));
            globals  = new HashSet <string>(StaticLists.ArrayToFormattedList(StaticLists.GlobalList, "", ""));
            //Methods
            var methodsList = StaticLists.FunctionList.Select(x => x.Substring(0, x.IndexOf("("))).ToList();

            fyiReporting.RDL.FontStyleEnum fsi = fyiReporting.RDL.FontStyleEnum.Italic;                 // just want a class from RdlEngine.dll assembly
            Assembly a = Assembly.GetAssembly(fsi.GetType());

            if (a == null)
            {
                return;
            }
            Type ft = a.GetType("fyiReporting.RDL.VBFunctions");

            BuildMethods(methodsList, ft);
            simpleMethods = new HashSet <string>(methodsList);

            // build list of methods in class
            calssMethods = new Dictionary <string, HashSet <string> >();
            methodsList  = new List <string>();
            ft           = a.GetType("fyiReporting.RDL.Financial");
            BuildMethods(methodsList, ft);
            calssMethods.Add("Financial", new HashSet <string>(methodsList));

            methodsList = new List <string>();
            a           = Assembly.GetAssembly("".GetType());
            ft          = a.GetType("System.Math");
            BuildMethods(methodsList, ft);
            calssMethods.Add("Math", new HashSet <string>(methodsList));

            methodsList = new List <string>();
            ft          = a.GetType("System.Convert");
            BuildMethods(methodsList, ft);
            calssMethods.Add("Convert", new HashSet <string>(methodsList));

            methodsList = new List <string>();
            ft          = a.GetType("System.String");
            BuildMethods(methodsList, ft);
            calssMethods.Add("String", new HashSet <string>(methodsList));

            //Aggregate Methods
            aggrMethods = new HashSet <string>(StaticLists.AggrFunctionList.Select(x => x.Substring(0, x.IndexOf("("))));

            //Opertors
            operators = new HashSet <string>(StaticLists.OperatorList.Select(x => x.Trim()));
        }
Пример #2
0
        // Initializes the Globals
        void InitGlobals()
        {
            List <string> globals = StaticLists.ArrayToFormattedList(StaticLists.GlobalList, "{@", "}");

            InitTreeNodes("Globals", globals);
        }
Пример #3
0
        // Josh: 6:22:10 Begin Init Methods.
        // Methods have been changed to use InitTreeNodes
        // and ArrayToFormattedList methods
        // Initializes the user functions
        void InitUsers()
        {
            List <string> users = StaticLists.ArrayToFormattedList(StaticLists.UserList, "{!", "}");

            InitTreeNodes("User", users);
        }