package jetbrains.mps.refactoring.participant;
/*Generated by MPS */
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.ide.findusages.model.SearchResults;
import org.jetbrains.mps.openapi.module.SRepository;
public interface MoveNodeRefactoringParticipant<InitialDataObject, FinalDataObject> extends RefactoringParticipant<InitialDataObject, FinalDataObject, SNode, SNode> {
interface MoveNodeRefactoringDataCollector<InitialDataObject, FinalDataObject> extends RefactoringParticipant.RefactoringDataCollector<InitialDataObject, FinalDataObject, SNode, SNode> {
}
interface MoveNodeChange<InitialDataObject, FinalDataObject> extends RefactoringParticipant.Change<InitialDataObject, FinalDataObject> {
RefactoringParticipant.KeepOldNodes needsToPreserveOldNode();
}
abstract class ChangeBase<InitialDataObject, FinalDataObject> implements MoveNodeRefactoringParticipant.MoveNodeChange<InitialDataObject, FinalDataObject> {
public abstract SearchResults getSearchResults();
public RefactoringParticipant.KeepOldNodes needsToPreserveOldNode() {
return RefactoringParticipant.KeepOldNodes.REMOVE;
}
public abstract void confirm(FinalDataObject finalState, SRepository repository, RefactoringSession refactoringSession);
}
}