function addOptions()

in packages/autorest.python/scripts/eng/regenerate.ts [218:246]


function addOptions(spec: string, generatedFolder: string, flags: RegenerateFlags): EmitterConfig[] {
    const emitterConfigs: EmitterConfig[] = [];
    for (const config of getEmitterOption(spec)) {
        const options: Record<string, string> = { ...config };
        options["flavor"] = flags.flavor;
        for (const [k, v] of Object.entries(SpecialFlags[flags.flavor] ?? {})) {
            options[k] = v;
        }
        if (options["emitter-output-dir"] === undefined) {
            const packageName = options["package-name"] || defaultPackageName(spec);
            options["emitter-output-dir"] = toPosix(`${generatedFolder}/test/${flags.flavor}/generated/${packageName}`);
        }
        if (flags.debug) {
            options["debug"] = "true";
        }
        if (flags.flavor === "unbranded") {
            options["company-name"] = "Unbranded";
        }
        options["examples-dir"] = toPosix(join(dirname(spec), "examples"));
        const configs = Object.entries(options).flatMap(([k, v]) => {
            return `--option @azure-tools/typespec-python.${k}=${v}`;
        });
        emitterConfigs.push({
            optionsStr: configs.join(" "),
            outputDir: options["emitter-output-dir"],
        });
    }
    return emitterConfigs;
}