コード例 #1
0
ファイル: ClsRpn.cs プロジェクト: Yoshisan0/suim
 public override void Parse(ClsContext clContext)
 {
     var clToken = clContext.CurrentToken;
     ClsNode clNode1 = new ClsNodeEqual();
     clNode1.Parse(clContext);
     clToken = clContext.CurrentToken;
     while (clToken == "&" || clToken == "|")
     {
         clContext.NextToken();
         ClsNode clNode2 = new ClsNodeEqual();
         clNode2.Parse(clContext);
         clContext.Notation.Add(clToken);
         clToken = clContext.CurrentToken;
     }
 }
コード例 #2
0
ファイル: ClsRpn.cs プロジェクト: Yoshisan0/suim
        public override void Parse(ClsContext clContext)
        {
            var clToken = clContext.CurrentToken;
            Match clMatch = Regex.Match(clToken, ClsSuim.REGEX_CNG_NAME);
            if (!clMatch.Success)
            {
                int inSign = 1;
                string clSign = "";
//              IEnumerable<char> nstr = clToken;
                if (IsSign(clToken[0]))
                {
                    inSign = GetSign(clToken);
                    clSign = clToken;
                    clToken = clContext.NextToken();
                }

                clMatch = Regex.Match(clToken, ClsSuim.REGEX_CNG_NAME);
                if (clMatch.Success)
                {
                    clToken = clSign + clToken;
                }
                else
                {
                    clToken = string.Format("{0}", inSign * Convert.ToDecimal(clToken));
                }
            }
            clContext.Notation.Add(clToken);
            clContext.NextToken();
        }
コード例 #3
0
ファイル: ClsRpn.cs プロジェクト: Yoshisan0/suim
 public override void Parse(ClsContext clContext)
 {
     ClsNode clNode1 = new ClsNodeFactor();
     clNode1.Parse(clContext);
     string clToken = clContext.CurrentToken;
     while (clToken == "*" || clToken == "/" || clToken == "%")
     {
         clContext.NextToken();
         ClsNode clNode2 = new ClsNodeFactor();
         clNode2.Parse(clContext);
         clContext.Notation.Add(clToken);
         clToken = clContext.CurrentToken;
     }
 }