Beispiel #1
0
        public static void Init()
        {
            if (Functions.Instance == null)
                m_functions = new Functions();

            if (m_htOperators.Count == 0)
            {
                CreateOperator(new Operator("[",1,true,true,false,false));
                CreateOperator(new Operator(".",1,true,true,false,false));
                CreateOperator(new Operator("*",3,true,true,false,false));
                CreateOperator(new Operator("/",3,true,true,false,false));
                CreateOperator(new Operator("+",4,true,true,false,false));
                CreateOperator(new Operator("-",4,true,true,false,false));
                CreateOperator(new Operator("%",9,true,true,false,false));
                CreateOperator(new Operator("&",8,true,true,false,false));
                CreateOperator(new Operator("|",10,true,true,false,false));
                CreateOperator(new Operator("&&",11,true,true,false,false));
                CreateOperator(new Operator("||",12,true,true,false,false));
                CreateOperator(new Operator("==",7,true,true,false,false));
                CreateOperator(new Operator("!=",7,true,true,false,false));
                CreateOperator(new Operator("!",88,false,true,false,false)); // this isn't really used, just for identifying "!pre" below
                CreateOperator(new Operator(">=",6,true,true,false,false));
                CreateOperator(new Operator("<=",6,true,true,false,false));
                CreateOperator(new Operator(">",6,true,true,false,false));
                CreateOperator(new Operator("<",6,true,true,false,false));
                CreateOperator(new Operator(":",100,true,true,false,false));

                CreateOperator(new Operator("++",2,false,true,true,false));
                CreateOperator(new Operator("--",2,false,true,true,false));
                CreateOperator(new Operator("=",14,true,false,true,false));
                CreateOperator(new Operator("+=",14,true,false,true,false));
                CreateOperator(new Operator("-=",14,true,false,true,false));
                CreateOperator(new Operator("*=",14,true,false,true,false));
                CreateOperator(new Operator("/=",14,true,false,true,false));

                //TODO: pre-operators:
                CreateOperator(new Operator("pre++",1,false,false,true,true));
                CreateOperator(new Operator("pre--",1,false,false,true,true));
                CreateOperator(new Operator("pre-",1,false,false,false,true));
                CreateOperator(new Operator("pre!",1,false,false,false,true));
            //				CreateOperator(new Operator("*",-1,true,false,false,"ptr*"));
            //				CreateOperator(new Operator("&",-1,true,false,false,"ptr&"));

                m_aSeparators.Add("(");
                m_aSeparators.Add(")");
                m_aSeparators.Add("[");
                m_aSeparators.Add("]");
                m_aSeparators.Add(",");
            }
        }
Beispiel #2
0
 public Functions()
 {
     Instance = this;
     m_htUserValues = new Hashtable();
 }