Ejemplo n.º 1
0
        public static object VisitLiteral(NyaParser.RealLiteralContext context)
        {
            string value  = context.GetText().ToLower();
            string suffix = "";

            if (new[] { 'f', 'd', 'm' }.Contains(value[value.Length - 1]))
            {
                suffix = value[value.Length - 1].ToString();
                value  = value.Substring(0, value.Length - 1);
            }

            switch (suffix)
            {
            case "m":
                return(decimal.Parse(value, value.Contains("e") ?
                                     System.Globalization.NumberStyles.Float : System.Globalization.NumberStyles.Number));

            case "d":
                return(double.Parse(value));

            case "f":
            default:
                return(float.Parse(value));
            }
        }
Ejemplo n.º 2
0
 public override object VisitRealLiteral([NotNull] NyaParser.RealLiteralContext context)
 {
     return(LiteralHelper.VisitLiteral(context));
 }