org.eclipse.xtend.middleend.xtend.internal.xtendlib
Class XpandIsDeleteLine

java.lang.Object
  extended by org.eclipse.xtend.middleend.xtend.internal.xtendlib.XpandIsDeleteLine

public class XpandIsDeleteLine
extends java.lang.Object

This class supports the "isDeleteLine" feature of Xpand, i.e. the "-" at the end of a statement that deletes whitespace both backward and forward.
Since it is non-local functionality, it requires global postprocessing. For this purpose, a marker string is inserted wherever this deletion of whitespace should be performed.
Since this postprocessing requires transformation of the entire contents of a file into a flat string, this feature precludes streaming. Therefore a flag is introduced to indicate if the feature was actually used. This requires resetting at the beginning of each FILE statement.

Author:
Arno Haase (http://www.haase-consulting.com)

Field Summary
static java.lang.String MARKER_FOR_IS_DELETE_LINE
           
 
Constructor Summary
XpandIsDeleteLine()
           
 
Method Summary
 void XpandInitNewScope()
           
 java.lang.CharSequence XpandPostprocess(java.lang.CharSequence s)
           
 void XpandRegisterDeleteLine()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MARKER_FOR_IS_DELETE_LINE

public static final java.lang.String MARKER_FOR_IS_DELETE_LINE
See Also:
Constant Field Values
Constructor Detail

XpandIsDeleteLine

public XpandIsDeleteLine()
Method Detail

XpandInitNewScope

public void XpandInitNewScope()

XpandRegisterDeleteLine

public void XpandRegisterDeleteLine()

XpandPostprocess

public java.lang.CharSequence XpandPostprocess(java.lang.CharSequence s)