Exemple #1
0
        public override LiteralNode VisitNumber([NotNull] NumberContext context)
        {
            var   doub = context.Double();
            var   txt  = context.GetText();
            IType typ  = new IntType();

            if (doub != null)
            {
                typ = new DoubleType();
            }

            return(new LiteralNode(context.GetText(), typ, GetLocation(context)));
        }
Exemple #2
0
        public override void EnterNumber([NotNull] NumberContext context)
        {
            Double.TryParse(context.GetText(), out double d);
            var e = CreateElementOnStack <Number>().Initialize(d);

            GiveChildToParent(e);
        }
        public static double ConvertNumber([NotNull] NumberContext ctx)
        {
            string numer = ctx.GetText();

            if (numer[0] == '0')
            {
                if (numer[1] == 'x')
                {
                    numer = Convert.ToInt64(numer, 16).ToString();
                }
                else
                {
                    numer = Convert.ToInt64(numer, 8).ToString();
                }
            }
            return(double.Parse(numer, ConsolePrinter.FORMAT));
        }
 public override SymbolBase VisitNumber([NotNull] NumberContext context) =>
 new NumberSymbol(context.GetText());