difflib.Delta.getRevised()方法的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(13.3k)|赞(0)|评价(0)|浏览(155)

本文整理了Java中difflib.Delta.getRevised()方法的一些代码示例,展示了Delta.getRevised()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Delta.getRevised()方法的具体详情如下:
包路径:difflib.Delta
类名称:Delta
方法名:getRevised

Delta.getRevised介绍

暂无

代码示例

代码示例来源:origin: org.fitnesse/fitnesse

  1. @Override
  2. protected Chunk<Character> getChunk(final Delta<Character> d) {
  3. return d.getRevised();
  4. }

代码示例来源:origin: com.github.tcnh/fitnesse

  1. @Override
  2. protected Chunk<Character> getChunk(final Delta<Character> d) {
  3. return d.getRevised();
  4. }

代码示例来源:origin: com.sqlapp/sqlapp-core

  1. private static StringBuilder getBuilder(Delta<?> delta) {
  2. StringBuilder builder = new StringBuilder(256);
  3. builder.append("@@ -");
  4. builder.append(delta.getOriginal().getPosition());
  5. builder.append(",");
  6. builder.append(delta.getOriginal().last());
  7. builder.append(" +");
  8. builder.append(delta.getRevised().getPosition());
  9. builder.append(",");
  10. builder.append(delta.getRevised().last());
  11. builder.append(" @@");
  12. return builder;
  13. }

代码示例来源:origin: dkpro/dkpro-jwpl

  1. /**
  2. * Returns the deltas between beforeText and afterText as a line separated String.
  3. * For more detailed diffs, use getPatch() or getUnifiedDiffStrings()
  4. *
  5. * @param diffType defines the type of diffs to include in the String
  6. * @return diffs as line-separated String
  7. */
  8. public String getLongDiffString(TYPE diffType) {
  9. StringBuilder deltas = new StringBuilder();
  10. for(Delta delta:getPatch().getDeltas()){
  11. if(delta.getType()==diffType){
  12. deltas.append("Original (Non-Neutral):");
  13. deltas.append(System.getProperty("line.separator"));
  14. deltas.append(delta.getOriginal());
  15. deltas.append(System.getProperty("line.separator"));
  16. deltas.append(System.getProperty("line.separator"));
  17. deltas.append("Revised (Neutral):");
  18. deltas.append(System.getProperty("line.separator"));
  19. deltas.append(delta.getRevised());
  20. deltas.append(System.getProperty("line.separator"));
  21. deltas.append("*********************************************");
  22. deltas.append(System.getProperty("line.separator"));
  23. }
  24. }
  25. return deltas.toString();
  26. }

代码示例来源:origin: dkpro/dkpro-jwpl

  1. /**
  2. * Returns the deltas between beforeText and afterText as a line separated String.
  3. * For more detailed diffs, use getPatch() or getUnifiedDiffStrings()
  4. *
  5. * @return diffs as line-separated String
  6. */
  7. public String getLongDiffString() {
  8. StringBuilder deltas = new StringBuilder();
  9. for(Delta delta:getPatch().getDeltas()){
  10. deltas.append("DeltaType: "+delta.getType().toString());
  11. deltas.append(System.getProperty("line.separator"));
  12. deltas.append("Original (Non-Neutral):");
  13. deltas.append(System.getProperty("line.separator"));
  14. deltas.append(delta.getOriginal());
  15. deltas.append(System.getProperty("line.separator"));
  16. deltas.append(System.getProperty("line.separator"));
  17. deltas.append("Revised (Neutral):");
  18. deltas.append(System.getProperty("line.separator"));
  19. deltas.append(delta.getRevised());
  20. deltas.append(System.getProperty("line.separator"));
  21. }
  22. return deltas.toString();
  23. }

代码示例来源:origin: com.custardsource.dybdob/java-diff-utils-copy

  1. /**
  2. * getDeltaText returns the lines to be added to the Unified Diff text from the Delta parameter
  3. * @author Bill James (tankerbay@gmail.com)
  4. *
  5. * @param delta - the Delta to output
  6. * @return list of String lines of code.
  7. */
  8. private static List<String> getDeltaText(Delta delta) {
  9. List<String> buffer = new ArrayList<String>();
  10. for (Object line : delta.getOriginal().getLines()) {
  11. buffer.add("-" + line);
  12. }
  13. for (Object line : delta.getRevised().getLines()) {
  14. buffer.add("+" + line);
  15. }
  16. return buffer;
  17. }

代码示例来源:origin: com.googlecode.java-diff-utils/diffutils

  1. /**
  2. * getDeltaText returns the lines to be added to the Unified Diff text from
  3. * the Delta parameter
  4. *
  5. * @param delta
  6. * - the Delta to output
  7. * @return list of String lines of code.
  8. * @author Bill James (tankerbay@gmail.com)
  9. */
  10. private static List<String> getDeltaText(Delta<String> delta) {
  11. List<String> buffer = new ArrayList<String>();
  12. for (String line : delta.getOriginal().getLines()) {
  13. buffer.add("-" + line);
  14. }
  15. for (String line : delta.getRevised().getLines()) {
  16. buffer.add("+" + line);
  17. }
  18. return buffer;
  19. }

代码示例来源:origin: com.sqlapp/sqlapp-core

  1. /**
  2. * 差分をユニファイド形式の文字列にします。
  3. *
  4. * @param delta
  5. * 差分
  6. * @return ユニファイド形式の文字列
  7. */
  8. public static String toString(Delta<?> delta) {
  9. if (delta == null) {
  10. return "";
  11. }
  12. StringBuilder builder = getBuilder(delta);
  13. if ((delta instanceof DeleteDelta) || (delta instanceof ChangeDelta)) {
  14. for (Object obj : delta.getOriginal().getLines()) {
  15. builder.append("\n");
  16. builder.append("-");
  17. builder.append(obj);
  18. }
  19. }
  20. if ((delta instanceof InsertDelta) || (delta instanceof ChangeDelta)) {
  21. for (Object obj : delta.getRevised().getLines()) {
  22. builder.append("\n");
  23. builder.append("+");
  24. builder.append(obj);
  25. }
  26. }
  27. return builder.toString();
  28. }

代码示例来源:origin: com.qulice/qulice-xml

  1. /**
  2. * Remove unwanted deltas.
  3. * @param diff Patch to filter.
  4. * @return Patch with unwanted deltas removed.
  5. * @todo #469:30min Remove the method below and find a way to format tags
  6. * correctly in XML. Attributes should be indented by 4 spaces, just like
  7. * XML tags, but in IT xml-violations there is a tag that our Prettifier
  8. * want to be indented by 3 spaces which is wrong. Another problem is
  9. * that in the parent tag, attributes are indented to match the first
  10. * attribute, this is also wrong - all attributes on new line should be
  11. * indented by 4 spaces.
  12. */
  13. private static Patch filter(final Patch diff) {
  14. final Patch patch = new Patch();
  15. for (final Delta delta : diff.getDeltas()) {
  16. final List<?> prev = delta.getOriginal().getLines();
  17. if (
  18. prev.size() != 1 || delta.getRevised().getLines().size() != 1
  19. || !XmlValidator.ATTRS_PATTERN
  20. .matcher(prev.get(0).toString()).matches()
  21. ) {
  22. patch.addDelta(delta);
  23. }
  24. }
  25. return patch;
  26. }
  27. }

代码示例来源:origin: com.cognifide.aet/jobs

  1. private List<ResultDelta> addFullSource(List<Delta> deltaList, List<String> originalList,
  2. List<String> revisedList) {
  3. List<ResultDelta> deltaListWithSource = new ArrayList<>();
  4. int lastPositionOriginal = 0;
  5. int lastPositionRevised = 0;
  6. for (Delta delta : deltaList) {
  7. // original
  8. int sizeOriginal = delta.getOriginal().getLines().size();
  9. int positionOriginal = delta.getOriginal().getPosition();
  10. List<String> originalSubList = originalList.subList(lastPositionOriginal, positionOriginal);
  11. ResultChunk originalChunk = getNoChangesResultChunk(originalSubList, lastPositionOriginal);
  12. lastPositionOriginal = sizeOriginal + positionOriginal;
  13. // revised
  14. int sizeRevised = delta.getRevised().getLines().size();
  15. int positionRevised = delta.getRevised().getPosition();
  16. List<String> revisedSubList = revisedList.subList(lastPositionRevised, positionRevised);
  17. ResultChunk revisedChunk = getNoChangesResultChunk(revisedSubList, lastPositionRevised);
  18. lastPositionRevised = sizeRevised + positionRevised;
  19. ResultDelta resultDelta = new ResultDelta(TYPE.NO_CHANGE, originalChunk, revisedChunk);
  20. deltaListWithSource.add(resultDelta);
  21. deltaListWithSource.add(processDelta(delta));
  22. }
  23. if ((originalList.size() > lastPositionOriginal || revisedList.size() > lastPositionRevised)
  24. && !deltaList.isEmpty()) {
  25. ResultDelta resultDelta = prepareNoChangeResultDelta(originalList, revisedList,
  26. lastPositionOriginal, lastPositionRevised);
  27. deltaListWithSource.add(resultDelta);
  28. }
  29. return deltaListWithSource;
  30. }

代码示例来源:origin: Cognifide/aet

  1. private List<ResultDelta> addFullSource(List<Delta> deltaList, List<String> originalList,
  2. List<String> revisedList) {
  3. List<ResultDelta> deltaListWithSource = new ArrayList<>();
  4. int lastPositionOriginal = 0;
  5. int lastPositionRevised = 0;
  6. for (Delta delta : deltaList) {
  7. // original
  8. int sizeOriginal = delta.getOriginal().getLines().size();
  9. int positionOriginal = delta.getOriginal().getPosition();
  10. List<String> originalSubList = originalList.subList(lastPositionOriginal, positionOriginal);
  11. ResultChunk originalChunk = getNoChangesResultChunk(originalSubList, lastPositionOriginal);
  12. lastPositionOriginal = sizeOriginal + positionOriginal;
  13. // revised
  14. int sizeRevised = delta.getRevised().getLines().size();
  15. int positionRevised = delta.getRevised().getPosition();
  16. List<String> revisedSubList = revisedList.subList(lastPositionRevised, positionRevised);
  17. ResultChunk revisedChunk = getNoChangesResultChunk(revisedSubList, lastPositionRevised);
  18. lastPositionRevised = sizeRevised + positionRevised;
  19. ResultDelta resultDelta = new ResultDelta(TYPE.NO_CHANGE, originalChunk, revisedChunk);
  20. deltaListWithSource.add(resultDelta);
  21. deltaListWithSource.add(processDelta(delta));
  22. }
  23. if ((originalList.size() > lastPositionOriginal || revisedList.size() > lastPositionRevised)
  24. && !deltaList.isEmpty()) {
  25. ResultDelta resultDelta = prepareNoChangeResultDelta(originalList, revisedList,
  26. lastPositionOriginal, lastPositionRevised);
  27. deltaListWithSource.add(resultDelta);
  28. }
  29. return deltaListWithSource;
  30. }

代码示例来源:origin: com.cognifide.aet/jobs

  1. protected ResultDelta processDelta(Delta delta) {
  2. String originalLines = StringUtils.join(delta.getOriginal().getLines(), NEW_LINE);
  3. String revisedLines = StringUtils.join(delta.getRevised().getLines(), NEW_LINE);
  4. String originalChunkHtml;
  5. String revisedChunkHtml;

代码示例来源:origin: Cognifide/aet

  1. protected ResultDelta processDelta(Delta delta) {
  2. String originalLines = StringUtils.join(delta.getOriginal().getLines(), NEW_LINE);
  3. String revisedLines = StringUtils.join(delta.getRevised().getLines(), NEW_LINE);
  4. String originalChunkHtml;
  5. String revisedChunkHtml;

代码示例来源:origin: ferstl/pedantic-pom-enforcers

  1. private static int getExpansionLength(Collection<Delta<String>> deltas) {
  2. int length = 0;
  3. for(Delta<?> delta : deltas) {
  4. switch(delta.getType()) {
  5. case INSERT:
  6. case CHANGE:
  7. int expansion = delta.getRevised().size() - delta.getOriginal().size();
  8. length += (expansion > 0) ? expansion : 0;
  9. break;
  10. default: // NOP
  11. }
  12. }
  13. return length;
  14. }

代码示例来源:origin: com.cognifide.aet/jobs

  1. private ResultDelta buildDelta(String originalChunkHtml, String revisedChunkHtml, Delta delta) {
  2. String localOriginalChunkHtml = originalChunkHtml;
  3. String localRevisedChunkHtml = revisedChunkHtml;
  4. int originalLinesNo = delta.getOriginal().getLines().size();
  5. int revisedLinesNo = delta.getRevised().getLines().size();
  6. int sizeDiff = Math.abs(originalLinesNo - revisedLinesNo);
  7. if (sizeDiff > 0) {
  8. if (delta.getType().equals(Delta.TYPE.CHANGE)) {
  9. // I don't know why, but it have to be like that.
  10. sizeDiff++;
  11. }
  12. String alignment = StringUtils.repeat(BR_TAG, sizeDiff);
  13. if (originalLinesNo > revisedLinesNo) {
  14. localRevisedChunkHtml += alignment;
  15. } else if (originalLinesNo < revisedLinesNo) {
  16. localOriginalChunkHtml += alignment;
  17. }
  18. }
  19. int originalPosition = delta.getOriginal().getPosition();
  20. ResultChunk original = new ResultChunk(originalPosition, localOriginalChunkHtml);
  21. int revisedPosition = delta.getRevised().getPosition();
  22. ResultChunk revised = new ResultChunk(revisedPosition, localRevisedChunkHtml);
  23. return new ResultDelta(TYPE.valueOf(delta.getType().name()), original, revised);
  24. }

代码示例来源:origin: Cognifide/aet

  1. private ResultDelta buildDelta(String originalChunkHtml, String revisedChunkHtml, Delta delta) {
  2. String localOriginalChunkHtml = originalChunkHtml;
  3. String localRevisedChunkHtml = revisedChunkHtml;
  4. int originalLinesNo = delta.getOriginal().getLines().size();
  5. int revisedLinesNo = delta.getRevised().getLines().size();
  6. int sizeDiff = Math.abs(originalLinesNo - revisedLinesNo);
  7. if (sizeDiff > 0) {
  8. if (delta.getType().equals(Delta.TYPE.CHANGE)) {
  9. // I don't know why, but it have to be like that.
  10. sizeDiff++;
  11. }
  12. String alignment = StringUtils.repeat(BR_TAG, sizeDiff);
  13. if (originalLinesNo > revisedLinesNo) {
  14. localRevisedChunkHtml += alignment;
  15. } else if (originalLinesNo < revisedLinesNo) {
  16. localOriginalChunkHtml += alignment;
  17. }
  18. }
  19. int originalPosition = delta.getOriginal().getPosition();
  20. ResultChunk original = new ResultChunk(originalPosition, localOriginalChunkHtml);
  21. int revisedPosition = delta.getRevised().getPosition();
  22. ResultChunk revised = new ResultChunk(revisedPosition, localRevisedChunkHtml);
  23. return new ResultDelta(TYPE.valueOf(delta.getType().name()), original, revised);
  24. }

代码示例来源:origin: org.apache.jackrabbit.vault/vault-diff

  1. /**
  2. * Compute the difference between the 2 arrays.
  3. * @param reverse Indicates reverse diff
  4. * @return the change
  5. */
  6. public Change diff_2(final boolean reverse) {
  7. Change prev = new Change(0,0,0,0, null);
  8. Change ret = prev;
  9. Patch p = DiffUtils.diff(left, right);
  10. // recompute the changes based on the deltas.
  11. // todo: use the deltas directly in the DocumentDiff.
  12. for (Delta d: p.getDeltas()) {
  13. Chunk c0 = d.getOriginal();
  14. Chunk c1 = d.getRevised();
  15. Change next = new Change(
  16. c0.getPosition(), c1.getPosition(),
  17. c0.getLines().size(), c1.getLines().size(),
  18. null);
  19. if (reverse) {
  20. next.nextChange = ret;
  21. ret = next;
  22. } else {
  23. prev.nextChange = next;
  24. prev = next;
  25. }
  26. }
  27. return reverse ? ret : ret.nextChange;
  28. }

代码示例来源:origin: jenkinsci/jobConfigHistory-plugin

  1. /**
  2. * Loop through Delta.
  3. *
  4. * @param previousLeftPos
  5. * previous indentation
  6. * @return current indentation
  7. */
  8. int loop(int previousLeftPos) {
  9. final Chunk original = delta.getOriginal();
  10. final Chunk revised = delta.getRevised();
  11. @SuppressWarnings("unchecked")
  12. final List<DiffRow> diffRows = dfg.generateDiffRows(
  13. (List<String>) original.getLines(),
  14. (List<String>) revised.getLines());
  15. // Chunk#getPosition() returns 0-origin line numbers, but we need
  16. // 1-origin line numbers
  17. leftPos = original.getPosition() + 1;
  18. rightPos = revised.getPosition() + 1;
  19. if (previousLeftPos > 0 && leftPos - previousLeftPos > 1) {
  20. final SideBySideView.Line skippingLine = new SideBySideView.Line();
  21. skippingLine.setSkipping(true);
  22. view.addLine(skippingLine);
  23. }
  24. for (final DiffRow row : diffRows) {
  25. previousLeftPos = processDiffRow(row);
  26. }
  27. return previousLeftPos;
  28. }

代码示例来源:origin: ru.lanwen.diff/uri-differ-lib

  1. @Override
  2. public FormattedDelta apply(Delta from) {
  3. String original = on(delimiter).join(from.getOriginal().getLines());
  4. String revised = on(delimiter).join(from.getRevised().getLines());
  5. return new FormattedDelta(
  6. wrap(from.getType(), original, revised),
  7. from.getOriginal().getPosition(),
  8. from.getOriginal().size(),
  9. from.getType()
  10. );
  11. }

代码示例来源:origin: ferstl/pedantic-pom-enforcers

  1. Chunk<String> revised = delta.getRevised();
  2. int currentPosition = original.getPosition() + offset;

相关文章