Ejemplo n.º 1
0
  public CoreObject xRxEach(CoreCall cc) throws InterpreterException {
    CoreObject yieldFunction = cc.argPop();
    String delimiter = cc.getMemberDefaultString("sep", "");
    String[] parts = getCurrentObject(cc).value.toString().split(delimiter);

    int partCount = parts.length;
    for (int i = 0; i < partCount; i++) {
      ClastCapsule args = new ClastCapsule(new Token(), new CoreString(parts[i]));
      args.next = new ClastCapsule(new Token(), new CoreNumber(i));
      yieldFunction.execute(cc.flatCall(args));
    }
    return getCurrentObject(cc);
  }