Esempio n. 1
0
        public override void ExitFactor4(ssuplParser.Factor4Context context)
        {
            //factor -> FPNUM
            double d  = Double.Parse(context.FPNUM().GetText());
            string ds = "" + d;

            if (!ds.Contains("."))
            {
                ds += ".0";
            }
            code.Put(context,
                     $"mov rax, __float64__({ds})",
                     "push rax"
                     );
            typeAttr.Put(context, VarType.DOUBLE);
        }
 /// <summary>
 /// Exit a parse tree produced by the <c>factor4</c>
 /// labeled alternative in <see cref="ssuplParser.factor"/>.
 /// <para>The default implementation does nothing.</para>
 /// </summary>
 /// <param name="context">The parse tree.</param>
 public virtual void ExitFactor4([NotNull] ssuplParser.Factor4Context context)
 {
 }