JFlex
Class Skeleton

java.lang.Object
  extended by JFlex.Skeleton

public class Skeleton
extends java.lang.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.

See Also:
Emitter

Field Summary
static java.lang.String[] line
          The skeleton
 
Constructor Summary
Skeleton(java.io.PrintWriter out)
          Creates a new skeleton (iterator) instance.
 
Method Summary
 void emitNext()
          Emits the next part of the skeleton
static void makePrivate()
          Make the skeleton private.
static void readDefault()
          (Re)load the default skeleton.
static void readSkel(java.io.BufferedReader reader)
          Reads an external skeleton file from a BufferedReader.
static void readSkelFile(java.io.File skeletonFile)
          Reads an external skeleton file for later use with this class.
static java.lang.String replace(java.lang.String a, java.lang.String b, java.lang.String c)
          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 Detail

line

public static java.lang.String[] line
The skeleton

Constructor Detail

Skeleton

public Skeleton(java.io.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 occurences of " public " in the skeleton with " private ".


readSkelFile

public static void readSkelFile(java.io.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(java.io.BufferedReader reader)
                     throws java.io.IOException
Reads an external skeleton file from a BufferedReader.

Parameters:
reader - the reader to read from (must be != null)
Throws:
java.io.IOException - if an IO error occurs
GeneratorException - if the number of skeleton sections does not match

replace

public static java.lang.String replace(java.lang.String a,
                                       java.lang.String b,
                                       java.lang.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.