public Interpreter selectInterpreter(Example table)
    {
        Example cells = table.at(0, 0, 0);
        if (cells == null) return new SkipInterpreter();

        String interpreterName = cells.at(0).getContent();
        String[] fixtureAndParameters = fixtureAndParams(cells.at(1));
        try
        {
            Object[] args = CollectionUtil.isEmpty(fixtureAndParameters) ?
                    toArray(systemUnderDevelopment) : toArray(selectFixture(fixtureAndParameters));
            return GreenPepper.getInterpreter(interpreterName, systemUnderDevelopment.getClass(), args);
        }
        catch (Throwable t)
        {
            cells.at(0).annotate(Annotations.exception(t));
            return new SkipInterpreter(new Statistics(0, 0, 1, 0));
        }
    }
public Interpreter selectInterpreter ( Example table ) { Example cells = table . at ( 0 , 0 , 0 ) ; if ( cells == null ) return new SkipInterpreter ( ) ; String interpreterName = cells . at ( 0 ) . getContent ( ) ; String [ ] fixtureAndParameters = fixtureAndParams ( cells . at ( 1 ) ) ; try { Object [ ] args = CollectionUtil . isEmpty ( fixtureAndParameters ) ? toArray ( systemUnderDevelopment ) : toArray ( selectFixture ( fixtureAndParameters ) ) ; return GreenPepper . getInterpreter ( interpreterName , systemUnderDevelopment . getClass ( ) , args ) ; } catch ( Throwable t ) { cells . at ( 0 ) . annotate ( Annotations . exception ( t ) ) ; return new SkipInterpreter ( new Statistics ( 0 , 0 , 1 , 0 ) ) ; } }
{@inheritDoc}