// Location.java - a wrapper class for breakpoint locations in JVMTI /* Copyright (C) 2006 Free Software Foundation This file is part of libgcj. This software is copyrighted work licensed under the terms of the Libgcj License. Please consult the file "LIBGCJ_LICENSE" for details. */ package gnu.gcj.jvmti; import java.lang.Long; /** * This class represents a breakpoint location (pair). * BreakpointManager uses this class as a key in the Map of installed * breakpoints. * * @author Keith Seitz (keiths@redhat.com) */ public class Location { // method (a jmethodID in JVMTI) private long method; // index (a jlocation in JVMTI) private long location; /** * Constructor * * @param method the method defined by this location (a jmethodID) * @param location the integer index of the insn in the method (a jlocation) */ public Location (long method, long location) { this.method = method; this.location = location; } public int hashCode () { return toString ().hashCode (); } public boolean equals (Object obj) { Location loc = (Location) obj; return (loc.method == method && loc.location == location); } /** * Converts the Location to a String */ public String toString () { return Long.toHexString (method) + "." + Long.toString (location); } }