Class ProposedEditClasses
java.lang.Object
org.variantsync.diffdetective.editclass.proposed.ProposedEditClasses
- All Implemented Interfaces:
EditClassCatalogue
The catalog of edit classes proposed in our ESEC/FSE'22 paper.
- Author:
- Paul Bittner
-
Field Summary
Modifier and TypeFieldDescriptionstatic final EditClass
static final EditClass
A list of all nine edit classes in their order of appearance in the paper.A map of all nine edit classes, indexed by their DiffType.static final EditClass
static final ProposedEditClasses
Singleton instance of this catalog.static final EditClass
static final EditClass
static final EditClass
static final EditClass
static final EditClass
static final EditClass
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionall()
Gives a list of all edit classes in this catalogue.byType()
Returns a mapping from diff types to the edit classes that may match nodes of the given diff type.Returns the edit class that has the given name.Returns the edit class that matches the given node.
-
Field Details
-
AddToPC
-
AddWithMapping
-
RemFromPC
-
RemWithMapping
-
Specialization
-
Generalization
-
Reconfiguration
-
Refactoring
-
Untouched
-
All
A list of all nine edit classes in their order of appearance in the paper. -
EditClassesByType
A map of all nine edit classes, indexed by their DiffType. -
Instance
Singleton instance of this catalog.
-
-
Constructor Details
-
ProposedEditClasses
private ProposedEditClasses()
-
-
Method Details
-
all
Description copied from interface:EditClassCatalogue
Gives a list of all edit classes in this catalogue. The list should be constant and immutable (i.e., the very same list is returned each time all is invoked). The edit class should be immutable, too.- Specified by:
all
in interfaceEditClassCatalogue
- Returns:
- a constant list of all edit classes in this catalogue.
-
byType
Description copied from interface:EditClassCatalogue
Returns a mapping from diff types to the edit classes that may match nodes of the given diff type. The returned map as well as all its values should be immutable and constant. *- Specified by:
byType
in interfaceEditClassCatalogue
- Returns:
- A classification of edit classes by their diff types.
-
match
Description copied from interface:EditClassCatalogue
Returns the edit class that matches the given node. Each node matches exactly one edit class.- Specified by:
match
in interfaceEditClassCatalogue
- Parameters:
node
- The node of which to find its edit class.- Returns:
- Returns the edit class that matches the given node.
-
fromName
Returns the edit class that has the given name. Returns empty of no edit class has the given name.
-