public String getPattern() {
   try {
     IokeObject regexp = (IokeObject) backend.invoke(iokeStepDefObject, "regexp_pattern");
     return regexp.toString();
   } catch (ControlFlow controlFlow) {
     throw new CucumberException("Couldn't get pattern", controlFlow);
   }
 }
  public List<ParameterInfo> getParameterInfos() {
    try {
      IokeObject argNames = (IokeObject) backend.invoke(iokeStepDefObject, "arg_names");
      IokeObject argLength = (IokeObject) backend.invoke(argNames, "length");
      int groupCount =
          Integer.parseInt(argLength.toString()); // Not sure how to do this properly...

      return listOf(groupCount, new ParameterInfo(String.class, null, null, null));
    } catch (ControlFlow controlFlow) {
      throw new CucumberException("Couldn't inspect arity of stepdef", controlFlow);
    }
  }