diff --git a/utils/doclint/generateDotnetApi.js b/utils/doclint/generateDotnetApi.js index 270ef474cd..265faf1e25 100644 --- a/utils/doclint/generateDotnetApi.js +++ b/utils/doclint/generateDotnetApi.js @@ -250,15 +250,15 @@ for (const element of documentation.classesArray) { renderBaseClass(element); } +for (let [name, type] of optionTypes) + renderOptionType(name, type); + for (let [name, type] of modelTypes) renderModelType(name, type); for (let [name, literals] of enumTypes) renderEnum(name, literals); -for (let [name, type] of optionTypes) - renderOptionType(name, type); - if (process.argv[3] !== "--skip-format") { // run the formatting tool for .net, to ensure the files are prepped execSync(`dotnet format -f "${typesDir}" --include-generated --fix-whitespace`); @@ -438,7 +438,7 @@ function generateNameDefault(member, name, t, parent) { attemptedName = `${names.pop()}${attemptedName}`; continue; } else { - modelTypes.set(attemptedName, t); + registerModelType(attemptedName, t); } break; } @@ -883,6 +883,8 @@ function translateType(type, parent, generateNameCallback = t => t.name, optiona function registerModelType(typeName, type) { if (['object', 'string', 'int'].includes(typeName)) return; + if (typeName.endsWith('Option')) + return; let potentialType = modelTypes.get(typeName); if (potentialType) {