Class DifferenceElementCalculator
java.lang.Object
com.github.javaparser.printer.lexicalpreservation.DifferenceElementCalculator
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) static List
<DifferenceElement> calculate
(LexicalDifferenceCalculator.CalculatedSyntaxModel original, LexicalDifferenceCalculator.CalculatedSyntaxModel after) Calculate the Difference between two CalculatedSyntaxModel elements, determining which elements were kept, which were added and which were removed.private static List
<DifferenceElement> calculateImpl
(LexicalDifferenceCalculator.CalculatedSyntaxModel original, LexicalDifferenceCalculator.CalculatedSyntaxModel after) private static int
considerRemoval
(CsmElement removedElement, int originalIndex, List<DifferenceElement> elements) private static void
considerRemoval
(NodeText nodeTextForChild, List<DifferenceElement> elements) private static long
cost
(List<DifferenceElement> elements) private static List
<DifferenceElementCalculator.ChildPositionInfo> findChildrenPositions
(LexicalDifferenceCalculator.CalculatedSyntaxModel calculatedSyntaxModel) Find the positions of all the given children.(package private) static boolean
matching
(CsmElement a, CsmElement b) (package private) static void
removeIndentationElements
(List<DifferenceElement> elements) Remove from the difference all the elements related to indentation.private static boolean
replacement
(CsmElement a, CsmElement b)
-
Constructor Details
-
DifferenceElementCalculator
DifferenceElementCalculator()
-
-
Method Details
-
matching
-
replacement
-
findChildrenPositions
private static List<DifferenceElementCalculator.ChildPositionInfo> findChildrenPositions(LexicalDifferenceCalculator.CalculatedSyntaxModel calculatedSyntaxModel) Find the positions of all the given children. -
calculate
static List<DifferenceElement> calculate(LexicalDifferenceCalculator.CalculatedSyntaxModel original, LexicalDifferenceCalculator.CalculatedSyntaxModel after) Calculate the Difference between two CalculatedSyntaxModel elements, determining which elements were kept, which were added and which were removed. -
considerRemoval
-
considerRemoval
private static int considerRemoval(CsmElement removedElement, int originalIndex, List<DifferenceElement> elements) -
calculateImpl
private static List<DifferenceElement> calculateImpl(LexicalDifferenceCalculator.CalculatedSyntaxModel original, LexicalDifferenceCalculator.CalculatedSyntaxModel after) -
cost
-
removeIndentationElements
Remove from the difference all the elements related to indentation. This is mainly intended for test purposes.
-