argparse 3.0

የትዕዛዝ መስመር ነጋሪ እሴቶችን ለመተንተን የ3.0 C++ (C++17 ቀበሌኛ) ራስጌ-ብቻ ቤተ-መጽሐፍት መልቀቅ argparse, በ MIT ፈቃድ ስር ተሰራጭቷል.

ምን አዲስ ነገር አለ

  • እርስ በርስ ለሚደጋገፉ ክርክሮች ተጨማሪ ድጋፍ:

ራስ & ቡድን = program.add_mutually_exclusive_group (); ቡድን.add_argument ("-መጀመሪያ"); ቡድን.add_argument ("-ሁለተኛ");

  • የተጨመረው C ++20 ሞጁል;
  • ከበርካታ እሴቶች ለመምረጥ ተጨማሪ ድጋፍ:

program.add_argument("ግቤት") .default_value(std::string{"baz")) .ምርጫዎች("foo", "bar", "baz"); program.add_argument("ቆጠራ") .ነባሪ_እሴት(0) .ምርጫዎች(0፣ 1፣ 2፣ 3፣ 4፣ 5);

  • ለሁለትዮሽ ኖታ ተጨማሪ ድጋፍ፣ ለምሳሌ 0b101፡

argparse :: ArgumentParser ፕሮግራም ("ሙከራ"); program.add_argument ("-n") .scan<'b', uint8_t>();

  • ከመጠን በላይ የተጫነ የ is_subcommand_used ስሪት ታክሏል፣ ይህም ንዑስ ትዕዛዝ ተንታኝ ይቀበላል።
  • ወደ ArgumentParser የመውጫ_በነባሪ_ክርክሮች መለኪያ;
  • ከ --help ትዕዛዝ ውፅዓት ንዑስ ትዕዛዞችን ለመደበቅ ተጨማሪ ድጋፍ:

argparse :: ArgumentParser ፕሮግራም ("ሙከራ"); argparse :: ArgumentParser hide_cmd ("የተደበቀ"); hide_cmd.add_argument ("ፋይሎች") .ቀሪ (); hide_cmd.set_suppress (እውነት); program.add_subparser (ድብቅ_ሴሜዲ);

  • በ ArgumentParser ውስጥ የተተነተኑ እሴቶችን የመፈተሽ ችሎታን አክሏል ፣
  • ለክርክር ወደ ባለብዙ መስመር እገዛ አምድ የተጨመረ አሰላለፍ;
  • ብዙ ሳንካዎች ተስተካክለዋል።

ምንጭ: linux.org.ru

አስተያየት ያክሉ