export function renderFunctionDefinitionCore()

in src/cpp-renderer.ts [146:173]


export function renderFunctionDefinitionCore(
  className: string,
  funct: CPlusPlus.Function,
): string[] {
  var classQualifier = className.length > 0 ? className + '::' : '';

  var opener =
    typeToString(funct.returnType, true) +
    classQualifier +
    funct.name +
    '(' +
    renderParameters(funct.params) +
    ')' +
    (funct.is_const ? ' const' : '');

  if (funct.code != null) {
    if (funct.code.length == 0) {
      return [opener + ' {}'];
    } else {
      return [opener]
        .concat('{')
        .concat(funct.code.map(StringUtils.indent(2)))
        .concat('}');
    }
  } else {
    return [opener + ';'];
  }
}