Lines Matching refs:Option
27 Record *Option; member
43 static bool hasFlag(const Record *Option, StringRef OptionFlag, in hasFlag() argument
45 for (const Record *Flag : Option->getValueAsListOfDefs(FlagsField)) in hasFlag()
48 if (const DefInit *DI = dyn_cast<DefInit>(Option->getValueInit("Group"))) in hasFlag()
55 static bool isOptionVisible(const Record *Option, const Record *DocInfo) { in isOptionVisible() argument
57 if (hasFlag(Option, IgnoredFlag, "Flags")) in isOptionVisible()
60 if (hasFlag(Option, Mask, "Visibility")) in isOptionVisible()
184 unsigned getNumArgsForKind(Record *OptionKind, const Record *Option) { in getNumArgsForKind() argument
190 .Case("KIND_MULTIARG", Option->getValueAsInt("NumArgs")) in getNumArgsForKind()
211 bool canSphinxCopeWithOption(const Record *Option) { in canSphinxCopeWithOption() argument
214 for (char C : Option->getValueAsString("Name")) in canSphinxCopeWithOption()
242 void emitOptionWithArgs(StringRef Prefix, const Record *Option, in emitOptionWithArgs() argument
244 OS << Prefix << escapeRST(Option->getValueAsString("Name")); in emitOptionWithArgs()
247 getSeparatorsForKind(Option->getValueAsDef("Kind")); in emitOptionWithArgs()
258 void emitOptionName(StringRef Prefix, const Record *Option, raw_ostream &OS) { in emitOptionName() argument
260 unsigned NumArgs = getNumArgsForKind(Option->getValueAsDef("Kind"), Option); in emitOptionName()
261 bool HasMetaVarName = !Option->isValueUnset("MetaVarName"); in emitOptionName()
265 Args.push_back(std::string(Option->getValueAsString("MetaVarName"))); in emitOptionName()
285 emitOptionWithArgs(Prefix, Option, std::vector<StringRef>(Args.begin(), Args.end()), OS); in emitOptionName()
287 auto AliasArgs = Option->getValueAsListOfStrings("AliasArgs"); in emitOptionName()
289 Record *Alias = Option->getValueAsDef("Alias"); in emitOptionName()
298 bool emitOptionNames(const Record *Option, raw_ostream &OS, bool EmittedAny) { in emitOptionNames() argument
299 for (auto &Prefix : Option->getValueAsListOfStrings("Prefixes")) { in emitOptionNames()
302 emitOptionName(Prefix, Option, OS); in emitOptionNames()
309 void forEachOptionName(const DocumentedOption &Option, const Record *DocInfo, in forEachOptionName() argument
311 F(Option.Option); in forEachOptionName()
313 for (auto *Alias : Option.Aliases) in forEachOptionName()
315 canSphinxCopeWithOption(Option.Option)) in forEachOptionName()
319 void emitOption(const DocumentedOption &Option, const Record *DocInfo, in emitOption() argument
321 if (Option.Option->getValueAsDef("Kind")->getName() == "KIND_UNKNOWN" || in emitOption()
322 Option.Option->getValueAsDef("Kind")->getName() == "KIND_INPUT") in emitOption()
324 if (!canSphinxCopeWithOption(Option.Option)) in emitOption()
331 forEachOptionName(Option, DocInfo, [&](const Record *Option) { in emitOption() argument
332 for (auto &Prefix : Option->getValueAsListOfStrings("Prefixes")) in emitOption()
334 (Prefix + Option->getValueAsString("Name")).str()))); in emitOption()
352 forEachOptionName(Option, DocInfo, [&](const Record *Option) { in emitOption() argument
353 EmittedAny = emitOptionNames(Option, OS, EmittedAny); in emitOption()
360 const Record *R = Option.Option; in emitOption()