@Override protected TextEdit doCopy() { return new InsertEdit(this); }
String s = a.getText(); int n = s.length(); if (n < 6 || s.charAt(0) != '@') { int offset = a.getOffset(); String indent = null; int parenCount = 0; indent = getNewlineAndIdent(offset) + "\t"; InsertEdit ie = new InsertEdit(offset + pos, indent); extra.addChild(ie);
@Override public boolean visit(InsertEdit edit) { try { org.eclipse.lsp4j.TextEdit te = new org.eclipse.lsp4j.TextEdit(); te.setNewText(edit.getText()); te.setRange(JDTUtils.toRange(compilationUnit,edit.getOffset(),edit.getLength())); converted.add(te); } catch (JavaModelException e) { JavaLanguageServerPlugin.logException("Error converting TextEdits", e); } return super.visit(edit); }
InsertEdit edit = new InsertEdit(doc.getLineOffset(i), LINE_COMMENT_STRING); try addedInsertEdits.put(edit.getOffset(), edit);
translatedTextEdit = new InsertEdit(jspOffset, ((InsertEdit) textEdit).getText());
/** * Is e inserting an annotation? */ protected boolean isAnnotation(InsertEdit e) { String s = e.getText(); return s.length() > 1 && s.charAt(0) == '@'; }
/** * If there is anything after the node, inserts the line break to prevent commenting * out extra content. * * @param existingEdits * @param nodePosition * @param node * @throws BadLocationException * * @see LineBreakInserter#createLineBreakAfterNode(ITrackedNodePosition, ASTNode) */ protected void addLineBreakAfterNode(TextEdit existingEdits, ITrackedNodePosition nodePosition, ASTNode node) throws BadLocationException { InsertEdit lineBreakEdit = lineBreakInserter.createLineBreakAfterNode(nodePosition, node); if (lineBreakEdit != null) { // do not add a new line if there is one InsertEdit existingEdit = addedInsertEdits.get(lineBreakEdit.getOffset()); if (existingEdit == null) { existingEdits.addChild(lineBreakEdit); textEditsToRevert.add(lineBreakEdit); addedInsertEdits.put(lineBreakEdit.getOffset(), lineBreakEdit); } } }
InsertEdit edit = new InsertEdit(doc.getLineOffset(i), LINE_COMMENT_STRING); try addedInsertEdits.put(edit.getOffset(), edit);
if (i + 1 < all.length && all[i + 1] instanceof InsertEdit) { InsertEdit b = (InsertEdit)all[i + 1]; if (" ".equals(b.getText()) && isAnnotation(a)) { ReplaceEdit re = new ReplaceEdit(b.getOffset(), 1, getNewlineAndIdent(b.getOffset())); extra.addChild(re); i++; continue; if (", ".equals(a.getText()) && isAnnotation(b)) { ReplaceEdit re = new ReplaceEdit(a.getOffset() + 1, 1, getNewlineAndIdent(a.getOffset())); extra.addChild(re); i++;
@Override public boolean visit(InsertEdit edit) { fSize += edit.getText().length(); return super.visit(edit); }
/** * If there is anything after the node, inserts the line break to prevent commenting * out extra content. * * @param existingEdits * @param nodePosition * @param node * @throws BadLocationException * * @see LineBreakInserter#createLineBreakAfterNode(ITrackedNodePosition, ASTNode) */ protected void addLineBreakAfterNode(TextEdit existingEdits, ITrackedNodePosition nodePosition, ASTNode node) throws BadLocationException { InsertEdit lineBreakEdit = lineBreakInserter.createLineBreakAfterNode(nodePosition, node); if (lineBreakEdit != null) { // do not add a new line if there is one InsertEdit existingEdit = addedInsertEdits.get(lineBreakEdit.getOffset()); if (existingEdit == null) { existingEdits.addChild(lineBreakEdit); textEditsToRevert.add(lineBreakEdit); addedInsertEdits.put(lineBreakEdit.getOffset(), lineBreakEdit); } } }
@Override protected TextEdit doCopy() { return new InsertEdit(this); }
private static TextEdit shifEdit(TextEdit oldEdit, int diff) { TextEdit newEdit; if (oldEdit instanceof ReplaceEdit) { ReplaceEdit edit= (ReplaceEdit) oldEdit; newEdit= new ReplaceEdit(edit.getOffset() - diff, edit.getLength(), edit.getText()); } else if (oldEdit instanceof InsertEdit) { InsertEdit edit= (InsertEdit) oldEdit; newEdit= new InsertEdit(edit.getOffset() - diff, edit.getText()); } else if (oldEdit instanceof DeleteEdit) { DeleteEdit edit= (DeleteEdit) oldEdit; newEdit= new DeleteEdit(edit.getOffset() - diff, edit.getLength()); } else if (oldEdit instanceof MultiTextEdit) { newEdit= new MultiTextEdit(); } else { return null; // not supported } TextEdit[] children= oldEdit.getChildren(); for (int i= 0; i < children.length; i++) { TextEdit shifted= shifEdit(children[i], diff); if (shifted != null) { newEdit.addChild(shifted); } } return newEdit; }
@Override public boolean visit(InsertEdit edit) { fSize += edit.getText().length(); return super.visit(edit); }
/** * Creates text edits to insert the text of a new import. */ private ImportEdits placeNewImport(ImportEntry currentResultantImport, int position) { String declaration = this.declarationWriter.writeImportDeclaration(currentResultantImport.importName); return new ImportEdits( Collections.<TextEdit>emptySet(), Collections.<TextEdit>singleton(new InsertEdit(position, declaration))); }
private static TextEdit shifEdit(TextEdit oldEdit, int diff) { TextEdit newEdit; if (oldEdit instanceof ReplaceEdit) { ReplaceEdit edit= (ReplaceEdit) oldEdit; newEdit= new ReplaceEdit(edit.getOffset() - diff, edit.getLength(), edit.getText()); } else if (oldEdit instanceof InsertEdit) { InsertEdit edit= (InsertEdit) oldEdit; newEdit= new InsertEdit(edit.getOffset() - diff, edit.getText()); } else if (oldEdit instanceof DeleteEdit) { DeleteEdit edit= (DeleteEdit) oldEdit; newEdit= new DeleteEdit(edit.getOffset() - diff, edit.getLength()); } else if (oldEdit instanceof MultiTextEdit) { newEdit= new MultiTextEdit(); } else { return null; // not supported } TextEdit[] children= oldEdit.getChildren(); for (int i= 0; i < children.length; i++) { TextEdit shifted= shifEdit(children[i], diff); if (shifted != null) { newEdit.addChild(shifted); } } return newEdit; }