question: private void appendFunctionNamesMatching ( List < ModuleFunctionPair > functionNameList , SourceFile m , String partialName ) { int exactHitAt = - 1 ; int parenAt = partialName . lastIndexOf ( '(' ) ; if ( parenAt > - 1 ) partialName = partialName . substring ( 0 , parenAt ) ; String [ ] names = m . getFunctionNames ( m_session ) ; for ( int i = 0 ; i < names . length ; i ++ ) { String functionName = names [ i ] ; if ( functionName . equals ( partialName ) ) { exactHitAt = i ; break ; } else if ( functionName . startsWith ( partialName ) ) functionNameList . add ( new ModuleFunctionPair ( m . getId ( ) , functionName ) ) ; } if ( exactHitAt > - 1 ) { functionNameList . clear ( ) ; functionNameList . add ( new ModuleFunctionPair ( m . getId ( ) , names [ exactHitAt ] ) ) ; } }
target:  Find function names in this module that start with the specified string, and append them to the specified List. <p/> If partialName contains parenthesis then we look for an exact match