public CodeException[] collectExceptions(CodeException... exs) {
        List<CodeException> filteredEx = new ArrayList<>();
        for (CodeException ce : exs) {
            if ((ce.getCatchType() != 0) && (ce.getStartPC() < ce.getEndPC()) && (ce.getEndPC() <= ce.getHandlerPC())) {
                filteredEx.add(ce);
            }
        }
        return filteredEx.toArray(new CodeException[0]);
    }
public CodeException [ ] collectExceptions ( CodeException ... exs ) { List < CodeException > filteredEx = new ArrayList < > ( ) ; for ( CodeException ce : exs ) { if ( ( ce . getCatchType ( ) != 0 ) && ( ce . getStartPC ( ) < ce . getEndPC ( ) ) && ( ce . getEndPC ( ) <= ce . getHandlerPC ( ) ) ) { filteredEx . add ( ce ) ; } } return filteredEx . toArray ( new CodeException [ 0 ] ) ; }
collects all the valid exception objects (ones where start and finish are before the target

@param exs
the exceptions from the class file
@return the filtered exceptions