Package spoon.support.sniper.internal
Class TokenWriterProxy
- java.lang.Object
-
- spoon.support.sniper.internal.TokenWriterProxy
-
- All Implemented Interfaces:
TokenWriter
public class TokenWriterProxy extends Object implements TokenWriter
Wraps a `tokenWriter` by an implementation which intercepts allTokenWriter
writeXxx(String) calls and callsTokenWriterProxy.Listener.onTokenWriterWrite(TokenType, String, CtComment, Runnable)
whereRunnable
can be used to invoke same event on the wrappedTokenWriter
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
TokenWriterProxy.Listener
Listens for each call ofTokenWriter
-
Constructor Summary
Constructors Constructor Description TokenWriterProxy(TokenWriterProxy.Listener listener, TokenWriter delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TokenWriter
decTab()
decrements indentationPrinterHelper
getPrinterHelper()
TokenWriter
incTab()
increments indentationvoid
reset()
resets to the initial stateTokenWriter
writeCodeSnippet(String token)
writes a code snippet - represents arbitrary code ofCtCodeSnippetExpression
orCtCodeSnippetStatement
TokenWriter
writeComment(CtComment comment)
writes a commentTokenWriter
writeIdentifier(String token)
writes a java identifier.TokenWriter
writeKeyword(String token)
writes a keyword abstract continue for new switch assert default goto package synchronized boolean do if private this break double implements protected throw byte else import public throws case enum instanceof return transient catch extends int short try char final interface static void class finally long strictfp volatile const float native super whileTokenWriter
writeLiteral(String token)
writes literal.TokenWriter
writeln()
writes new line (EOL)TokenWriter
writeOperator(String token)
Writes one operator.TokenWriter
writeSeparator(String token)
Writes one separator.TokenWriter
writeSpace()
Writes a single space.
-
-
-
Constructor Detail
-
TokenWriterProxy
public TokenWriterProxy(TokenWriterProxy.Listener listener, TokenWriter delegate)
-
-
Method Detail
-
writeSeparator
public TokenWriter writeSeparator(String token)
Description copied from interface:TokenWriter
Writes one separator. It is -> or :: or one of these characters: (){}[];,.:@=<>?&|- Specified by:
writeSeparator
in interfaceTokenWriter
-
writeOperator
public TokenWriter writeOperator(String token)
Description copied from interface:TokenWriter
Writes one operator. = > < ! ~ ? : == <= >= != && || ++ -- + - * / & | ^ % << >> >>> += -= *= /= &= |= ^= %= <<= >>= >>>= instanceof- Specified by:
writeOperator
in interfaceTokenWriter
-
writeLiteral
public TokenWriter writeLiteral(String token)
Description copied from interface:TokenWriter
writes literal. It can be a String, Character or an number- Specified by:
writeLiteral
in interfaceTokenWriter
-
writeKeyword
public TokenWriter writeKeyword(String token)
Description copied from interface:TokenWriter
writes a keyword abstract continue for new switch assert default goto package synchronized boolean do if private this break double implements protected throw byte else import public throws case enum instanceof return transient catch extends int short try char final interface static void class finally long strictfp volatile const float native super while- Specified by:
writeKeyword
in interfaceTokenWriter
-
writeIdentifier
public TokenWriter writeIdentifier(String token)
Description copied from interface:TokenWriter
writes a java identifier.- Specified by:
writeIdentifier
in interfaceTokenWriter
-
writeCodeSnippet
public TokenWriter writeCodeSnippet(String token)
Description copied from interface:TokenWriter
writes a code snippet - represents arbitrary code ofCtCodeSnippetExpression
orCtCodeSnippetStatement
- Specified by:
writeCodeSnippet
in interfaceTokenWriter
-
writeComment
public TokenWriter writeComment(CtComment comment)
Description copied from interface:TokenWriter
writes a comment- Specified by:
writeComment
in interfaceTokenWriter
-
writeln
public TokenWriter writeln()
Description copied from interface:TokenWriter
writes new line (EOL)- Specified by:
writeln
in interfaceTokenWriter
-
incTab
public TokenWriter incTab()
Description copied from interface:TokenWriter
increments indentation- Specified by:
incTab
in interfaceTokenWriter
-
decTab
public TokenWriter decTab()
Description copied from interface:TokenWriter
decrements indentation- Specified by:
decTab
in interfaceTokenWriter
-
getPrinterHelper
public PrinterHelper getPrinterHelper()
- Specified by:
getPrinterHelper
in interfaceTokenWriter
- Returns:
PrinterHelper
used by this TokenWriter. Note that in the future, will return an interface eg IPrinterHelper instead.
-
reset
public void reset()
Description copied from interface:TokenWriter
resets to the initial state- Specified by:
reset
in interfaceTokenWriter
-
writeSpace
public TokenWriter writeSpace()
Description copied from interface:TokenWriter
Writes a single space.- Specified by:
writeSpace
in interfaceTokenWriter
-
-