public static Cons idlTranslateMethodParameters(MethodSlot method) {
    { Cons result = Stella.NIL;
      Cons directions = Stella.NIL;

      if (method.methodParameterDirections().emptyP()) {
        { Symbol name = null;
          Cons iter000 = method.methodParameterNames().rest();
          Cons collect000 = null;

          for (;!(iter000 == Stella.NIL); iter000 = iter000.rest) {
            name = ((Symbol)(iter000.value));
            name = name;
            if (collect000 == null) {
              {
                collect000 = Cons.cons(Stella.SYM_STELLA_IN, Stella.NIL);
                if (directions == Stella.NIL) {
                  directions = collect000;
                }
                else {
                  Cons.addConsToEndOfConsList(directions, collect000);
                }
              }
            }
            else {
              {
                collect000.rest = Cons.cons(Stella.SYM_STELLA_IN, Stella.NIL);
                collect000 = collect000.rest;
              }
            }
          }
        }
      }
      else {
        directions = method.methodParameterDirections().rest();
      }
      { Symbol name = null;
        Cons iter001 = method.methodParameterNames().rest();
        StandardObject type = null;
        Cons iter002 = method.methodParameterTypeSpecifiers().rest();
        Stella_Object direction = null;
        Cons iter003 = directions;
        Cons collect001 = null;

        for (;(!(iter001 == Stella.NIL)) &&
                  ((!(iter002 == Stella.NIL)) &&
                   (!(iter003 == Stella.NIL))); 
              iter001 = iter001.rest,
              iter002 = iter002.rest,
              iter003 = iter003.rest) {
          name = ((Symbol)(iter001.value));
          type = ((StandardObject)(iter002.value));
          direction = iter003.value;
          if (collect001 == null) {
            {
              collect001 = Cons.cons(Symbol.idlTranslateMethodParameter(name, type, ((Symbol)(direction))), Stella.NIL);
              if (result == Stella.NIL) {
                result = collect001;
              }
              else {
                Cons.addConsToEndOfConsList(result, collect001);
              }
            }
          }
          else {
            {
              collect001.rest = Cons.cons(Symbol.idlTranslateMethodParameter(name, type, ((Symbol)(direction))), Stella.NIL);
              collect001 = collect001.rest;
            }
          }
        }
      }
      return (result);
    }
  }