コード例 #1
0
ファイル: Main.cs プロジェクト: Brumous101/Compiler-Design
        public override void ExitSumPlusProduct(calcParser.SumPlusProductContext context)
        {
            base.ExitSumPlusProduct(context);
            var    sum     = context.sum();
            var    product = context.product();
            double v1      = Annotations.ptp.Get(sum);
            double v2      = Annotations.ptp.Get(product);
            double res;

            if (context.ADDOP().GetText() == "+")
            {
                res = v1 + v2;
            }
            else
            {
                res = v1 - v2;
            }
            Annotations.ptp.Put(context, res);
        }
コード例 #2
0
 /// <summary>
 /// Exit a parse tree produced by the <c>sumPlusProduct</c>
 /// labeled alternative in <see cref="calcParser.sum"/>.
 /// <para>The default implementation does nothing.</para>
 /// </summary>
 /// <param name="context">The parse tree.</param>
 public virtual void ExitSumPlusProduct([NotNull] calcParser.SumPlusProductContext context)
 {
 }