Class Ek9LiteralParser

java.lang.Object
org.ek9lang.compiler.support.Ek9LiteralParser

public final class Ek9LiteralParser extends Object
Shared utility for parsing EK9 literals that the grammar supports but standard Java parse methods do not handle directly.

Covers hex/octal/underscore integer formats, underscore float formats, and character escape sequences (\t, A, octal \101).

  • Method Details

    • parseInteger

      public static int parseInteger(String literal)
      Parse an EK9 integer literal string to an int value. Handles decimal, hex (0x/0X), octal (0 prefix), and underscore-separated (1_000) formats.
    • parseFloat

      public static float parseFloat(String literal)
      Parse an EK9 float literal string to a float value. Handles underscore-separated formats (1_000.5).
    • parseDouble

      public static double parseDouble(String literal)
      Parse an EK9 float literal string to a double value. Handles underscore-separated formats (1_000.5).
    • parseCharacter

      public static char parseCharacter(String literal)
      Parse an EK9 character literal (quotes already stripped) to a char. Handles single characters, standard escapes (\t, \n), unicode escapes (A), and octal escapes (\101).
    • processStringEscapes

      public static String processStringEscapes(String literal)
      Process escape sequences in an EK9 string literal (quotes already stripped). Resolves \t, \n, A, \101, etc. Unrecognized escapes (e.g., \T) are passed through as-is. Returns the input unchanged if no backslash is present.