Class Skeleton

java.lang.Object
jflex.skeleton.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
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private static final String
    location of default skeleton
    static String[]
    The skeleton
    private final PrintWriter
    The writer to write the skeleton-parts to
    private int
    The current part of the skeleton (an index of nextStop[])
    private static final int
    expected number of sections in the skeleton file
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a new skeleton (iterator) instance.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Emits the next part of the skeleton
    static void
    Make the skeleton private.
    static void
    (Re)load the default skeleton.
    static void
    Reads an external skeleton file from a BufferedReader.
    static void
    readSkelFile(File skeletonFile)
    Reads an external skeleton file for later use with this class.
    static String
    Replaces a with b in c.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • DEFAULT_LOC

      private static final String DEFAULT_LOC
      location of default skeleton
      See Also:
    • size

      private static final int size
      expected number of sections in the skeleton file
      See Also:
    • line

      public static String[] line
      The skeleton
    • pos

      private int pos
      The current part of the skeleton (an index of nextStop[])
    • out

      private final PrintWriter out
      The writer to write the skeleton-parts to
  • Constructor Details

    • Skeleton

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

    • 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.