Class AssemblyContextGraph.Edge
- java.lang.Object
-
- ghidra.app.plugin.assembler.sleigh.sem.AssemblyContextGraph.Edge
-
- All Implemented Interfaces:
GEdge<AssemblyContextGraph.Vertex>
,java.lang.Comparable<AssemblyContextGraph.Edge>
- Enclosing class:
- AssemblyContextGraph
protected static class AssemblyContextGraph.Edge extends java.lang.Object implements GEdge<AssemblyContextGraph.Vertex>, java.lang.Comparable<AssemblyContextGraph.Edge>
A transition in a context transition graph A transition consists of the constructor whose context changes were applied. The operand index is included for reference and debugging. If we ever need to process rules with multiple subconstructors, the operand index explains the subtable name of the destination vertex.
-
-
Field Summary
Fields Modifier and Type Field Description protected AssemblyContextGraph.Vertex
end
protected int
op
protected AssemblyConstructorSemantic
sem
protected AssemblyContextGraph.Vertex
start
-
Constructor Summary
Constructors Constructor Description Edge(AssemblyConstructorSemantic sem, int op, AssemblyContextGraph.Vertex start, AssemblyContextGraph.Vertex end)
Construct a new transition associated with the given constructor and operand index
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(AssemblyContextGraph.Edge that)
boolean
equals(java.lang.Object o)
AssemblyContextGraph.Vertex
getEnd()
Get the end, or head, of the edgeAssemblyContextGraph.Vertex
getStart()
Get the start, or tail, of the edgeint
hashCode()
java.lang.String
toString()
-
-
-
Field Detail
-
sem
protected final AssemblyConstructorSemantic sem
-
op
protected final int op
-
start
protected final AssemblyContextGraph.Vertex start
-
end
protected final AssemblyContextGraph.Vertex end
-
-
Constructor Detail
-
Edge
public Edge(AssemblyConstructorSemantic sem, int op, AssemblyContextGraph.Vertex start, AssemblyContextGraph.Vertex end)
Construct a new transition associated with the given constructor and operand index- Parameters:
sem
- the constructor semanticop
- the operand index
-
-
Method Detail
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
compareTo
public int compareTo(AssemblyContextGraph.Edge that)
- Specified by:
compareTo
in interfacejava.lang.Comparable<AssemblyContextGraph.Edge>
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
getStart
public AssemblyContextGraph.Vertex getStart()
Description copied from interface:GEdge
Get the start, or tail, of the edgeIn the edge x -> y, x is the start
- Specified by:
getStart
in interfaceGEdge<AssemblyContextGraph.Vertex>
- Returns:
- the start
-
getEnd
public AssemblyContextGraph.Vertex getEnd()
Description copied from interface:GEdge
Get the end, or head, of the edgeIn the edge x -> y, y is the end
- Specified by:
getEnd
in interfaceGEdge<AssemblyContextGraph.Vertex>
- Returns:
- the end
-
-