visitParams()

in lib/generator.js [741:765]


  visitParams(ast, level, instanceFunc) {
    level += 2;
    assert.equal(ast.type, 'params');
    if (ast.params.length === 0) {
      this.emit(`(${instanceFunc ? 'self' : ''})`);
      return;
    }
    this.emit('(\n');
    if (instanceFunc){
      this.emit('self,\n', level);
    }
    for (var i = 0; i < ast.params.length; i++) {
      const node = ast.params[i];
      assert.equal(node.type, 'param');
      const name = _avoidKeywords(_snakeCase(_name(node.paramName)));
      this.emit(`${name}: `, level);
      this.visitType(node.paramType, level);
      this.emit(',');
      if (i !== ast.params.length - 1) {
        this.emit('\n');
      }
    }
    this.emit('\n');
    this.emit(')',level - 2);
  }