public bool Process()

in src/OoasUtil/ComLineProcesser.cs [103:288]


        public bool Process()
        {
            _continue = false;
            if (_args.Count == 0)
            {
                PrintUsage();
                return true;
            }

            try
            {
                for (int i = 0; i < _args.Count; i++)
                {
                    string arg = _args[i];
                    switch (arg)
                    {
                        case "--version":
                        case "-v":
                            PrintVersion();
                            return true;

                        case "--help":
                        case "-h":
                            PrintUsage();
                            return true;

                        case "--input":
                        case "-i":
                            if (!ProcessInput(_args[i + 1]))
                            {
                                return false;
                            }
                            i++;
                            break;

                        case "--keyassegment":
                        case "-k":
                            if (!ProcessKeyAsSegment(true))
                            {
                                return false;
                            }
                            break;

                        case "--yaml":
                        case "-y":
                            if (!ProcessTarget(OpenApiFormat.Yaml))
                            {
                                return false;
                            }
                            break;

                        case "--json":
                        case "-j":
                            if (!ProcessTarget(OpenApiFormat.Json))
                            {
                                return false;
                            }
                            break;

                        case "--specversion":
                        case "-s":
                            if (!int.TryParse(_args[i + 1], out int version) || !ProcessTarget(version))
                            {
                                return false;
                            }
                            ++i;
                            break;

                        case "--output":
                        case "-o":
                            if (!ProcessOutput(_args[i + 1]))
                            {
                                return false;
                            }
                            i++;
                            break;

                        case "--derivedtypesreferencesforresponses":
                        case "-drs":
                            if (!ProcessDerivedTypesReferencesForResponses(true))
                            {
                                return false;
                            }
                            break;

                        case "--derivedtypesreferencesforrequestbody":
                        case "-drq":
                            if (!ProcessDerivedTypesReferencesForRequestBody(true))
                            {
                                return false;
                            }
                            break;

                        case "--requireDerivedTypesConstraint":
                        case "-rdt":
                            if (!ProcessRequireDerivedTypesConstraint(true))
                            {
                                return false;
                            }
                            break;

                        case "--enablepagination":
                        case "-p":
                            if (!ProcessEnablePagination(true))
                            {
                                return false;
                            }
                            break;

                        case "--enableunqualifiedcall":
                        case "-u":
                            if (!ProcessEnableUnqualifiedCall(true))
                            {
                                return false;
                            }
                            break;

                        case "--disableschemaexamples":
                        case "-x":
                            if (!ProcessDisableSchemaExamples(true))
                            {
                                return false;
                            }
                            break;

                        default:
                            PrintUsage();
                            return false;
                    }
                }
            }
            catch
            {
                PrintUsage();
                return false;
            }

            // by default.
            if (Format == null)
            {
                Format = OpenApiFormat.Json;
            }

            if (Version == null)
            {
                Version = OpenApiSpecVersion.OpenApi3_0;
            }

            if (KeyAsSegment == null)
            {
                KeyAsSegment = false;
            }

            if (DerivedTypesReferencesForResponses == null)
            {
                DerivedTypesReferencesForResponses = false;
            }

            if (DerivedTypesReferencesForRequestBody == null)
            {
                DerivedTypesReferencesForRequestBody = false;
            }

            if (RequireDerivedTypesConstraint == null)
            {
                RequireDerivedTypesConstraint = false;
            }

            if (EnablePagination == null)
            {
                EnablePagination = false;
            }

            if (EnableUnqualifiedCall == null)
            {
                EnableUnqualifiedCall = false;
            }

            if (DisableSchemaExamples == null)
            {
                DisableSchemaExamples = false;
            }

            _continue = ValidateArguments();
            return _continue;
        }