@Override
	public int localCompare(PathNode<?> o) {
		if (this == o) return 0;

		if (o instanceof LocalVariablePathNode node) {
			LocalVariable value = getValue();
			LocalVariable otherValue = node.getValue();
			int cmp = Integer.compare(value.getIndex(), otherValue.getIndex());
			if (cmp == 0)
				cmp = value.getName().compareTo(otherValue.getName());
			if (cmp == 0)
				cmp = value.getDescriptor().compareTo(otherValue.getDescriptor());
			return cmp;
		} else if (o instanceof ThrowsPathNode || o instanceof CatchPathNode)
			return 1;
		else if (o instanceof InstructionPathNode)
			return -1;

		return 0;
	}
Node with parent.

@param parent
		Parent node.
@param variable
		Variable value.

@see ClassMemberPathNode#childVariable(LocalVariable)
recaf-core/src/main/java/software/coley/recaf/path/LocalVariablePathNode.java