# HG changeset patch # User Andreas Woess # Date 1414608890 -3600 # Node ID 8588db09f5e94f96b52002951e3a8456ae98102d # Parent 0b5aff6214b91c65b8c2ebc829622f33a015bf67 mx jol: let user select from found classes, skip duplicates diff -r 0b5aff6214b9 -r 8588db09f5e9 mx/mx_graal.py --- a/mx/mx_graal.py Fri Oct 31 00:27:14 2014 +0100 +++ b/mx/mx_graal.py Wed Oct 29 19:54:50 2014 +0100 @@ -2098,9 +2098,12 @@ """Java Object Layout""" joljar = mx.library('JOL_INTERNALS').get_path(resolve=True) candidates = mx.findclass(args, logToConsole=False, matcher=lambda s, classname: s == classname or classname.endswith('.' + s) or classname.endswith('$' + s)) - if len(candidates) > 10: - print "Found %d candidates. Please be more precise." % (len(candidates)) - return + + if len(candidates) > 0: + candidates = mx.select_items(list(mx.OrderedDict.fromkeys(candidates))) + else: + # mx.findclass can be mistaken, don't give up yet + candidates = args vm(['-javaagent:' + joljar, '-cp', os.pathsep.join([mx.classpath(), joljar]), "org.openjdk.jol.MainObjectInternals"] + candidates)