question: public Set < String > api_descriptors ( Method m ) { Set < String > apid = new LinkedHashSet < String > ( ) ; apid . addAll ( m . getPermissions ( ) ) ; String cname = m . getCname ( ) ; String sig = m . getSignature ( ) ; if ( cname . startsWith ( "java" ) ) { if ( cname . contains ( "reflect" ) ) apid . add ( "java.reflection" ) ; else if ( cname . contains ( ".io" ) || cname . contains ( ".nio" ) ) apid . add ( "java.io" ) ; else if ( cname . contains ( ".net" ) ) apid . add ( "java.net" ) ; else if ( cname . contains ( ".rmi" ) ) apid . add ( "java.rmi" ) ; else if ( cname . contains ( "Thread" ) || cname . contains ( "Runnable" ) || ( cname . contains ( "Process" ) ) ) apid . add ( "java.thread" ) ; else if ( cname . contains ( "Loader" ) ) apid . add ( "java.classloader" ) ; } else if ( cname . startsWith ( "android" ) ) { if ( sig . contains ( "Intent" ) ) apid . add ( "android.intent" ) ; if ( cname . contains ( "opengl" ) ) apid . add ( "android.gui" ) ; } if ( apid . size ( ) == 0 ) apid . add ( "misc" ) ; return apid ; }
target:  Returns a set of descriptors for each method 