blob: 671ea3b9229ce97947546dd8ce41d36ca3796d5f [file] [log] [blame]
package org.eclipse.dltk.javascript.formatter.internal;
import org.eclipse.dltk.formatter.FormatterNodeRewriter;
import org.eclipse.dltk.formatter.IFormatterContainerNode;
import org.eclipse.dltk.formatter.IFormatterDocument;
import org.eclipse.dltk.formatter.IFormatterNode;
import org.eclipse.dltk.javascript.ast.Comment;
import org.eclipse.dltk.javascript.ast.Script;
import org.eclipse.dltk.javascript.formatter.internal.nodes.FormatterCommentNode;
public class JavascriptFormatterNodeRewriter extends FormatterNodeRewriter {
public JavascriptFormatterNodeRewriter(Script ast) {
for (Comment comment : ast.getComments()) {
addComment(comment.sourceStart(), comment.sourceEnd(), comment);
}
}
public void rewrite(IFormatterContainerNode root) {
mergeTextNodes(root);
insertComments(root);
}
@Override
protected IFormatterNode createCommentNode(IFormatterDocument document,
int startOffset, int endOffset, Object object) {
return new FormatterCommentNode(document, startOffset, endOffset,
((Comment) object).isMultiLine());
}
}