Class Skeleton


  • public class Skeleton
    extends Object
    This class stores the skeleton of generated scanners.

    The skeleton consists of several parts that can be emitted to a file. Usually there is a portion of generated code (produced in class Emitter) between every two parts of skeleton code.

    There is a static part (the skeleton code) and state based iterator part to this class. The iterator part is used to emit consecutive skeleton sections to some PrintWriter.

    Version:
    JFlex 1.8.2
    Author:
    Gerwin Klein
    See Also:
    Emitter
    • Field Detail

      • line

        public static String[] line
        The skeleton
    • Constructor Detail

      • Skeleton

        public Skeleton​(PrintWriter out)
        Creates a new skeleton (iterator) instance.
        Parameters:
        out - the writer to write the skeleton-parts to
    • Method Detail

      • emitNext

        public void emitNext()
        Emits the next part of the skeleton
      • makePrivate

        public static void makePrivate()
        Make the skeleton private.

        Replaces all occurrences of " public " in the skeleton with " private ".

      • readSkelFile

        public static void readSkelFile​(File skeletonFile)
        Reads an external skeleton file for later use with this class.
        Parameters:
        skeletonFile - the file to read (must be != null and readable)
      • readSkel

        public static void readSkel​(BufferedReader reader)
                             throws IOException
        Reads an external skeleton file from a BufferedReader.
        Parameters:
        reader - the reader to read from (must be != null)
        Throws:
        IOException - if an IO error occurs
        GeneratorException - if the number of skeleton sections does not match
      • replace

        public static String replace​(String a,
                                     String b,
                                     String c)
        Replaces a with b in c.
        Parameters:
        a - the String to be replaced
        b - the replacement
        c - the String in which to replace a by b
        Returns:
        a String object with a replaced by b in c
      • readDefault

        public static void readDefault()
        (Re)load the default skeleton. Looks in the current system class path.