nl :: ArgParser
Tóm lược
Bảng kê | |
---|---|
OptionArgumentType | enum Xác định các yêu cầu đối số cho một tùy chọn dòng lệnh. |
Typedefs | |
---|---|
NonOptionArgHandlerFunct )(const char *progName, int argc, char *argv[]) | typedefbool(* Một hàm có thể được gọi để xử lý mọi đối số dòng lệnh còn lại, không phải tùy chọn. |
OptionHandlerFunct )(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg) | typedefbool(* Một hàm có thể được gọi để xử lý một tập hợp các tùy chọn dòng lệnh. |
Biến | |
---|---|
PrintArgError = DefaultPrintArgError)(const char *msg,...) | void(* Con trỏ đến hàm được sử dụng để in lỗi xảy ra trong quá trình phân tích cú pháp đối số. |
gActiveOptionSets = NULL | OptionSet ** Danh sách các OptionSets được chuyển đến lệnh gọi ParseArgs () hiện đang hoạt động. |
Chức năng | |
---|---|
CountAllOptions ( OptionSet *optSets[]) | size_t |
CountAllOptions ( OptionSet **optSets) | size_t |
CountOptionSets ( OptionSet *optSets[]) | size_t |
CountOptionSets ( OptionSet **optSets) | size_t |
DefaultPrintArgError (const char *msg, ...) | void In thông báo lỗi liên quan đến phân tích cú pháp đối số. |
FindOptionById ( OptionSet **optSets, int optId, OptionSet *& optSet, OptionDef *& optDef) | void |
FindOptionByIndex ( OptionSet **optSets, int optIndex, OptionSet *& optSet, OptionDef *& optDef) | void |
GetNextArg (char *& parsePoint) | bool |
IsShortOptionChar (int ch) | bool |
MakeLongOptions ( OptionSet **optSets) | struct option * |
MakeShortOptions ( OptionSet **optSets) | char * |
MakeUniqueHelpGroupNamesList ( OptionSet *optSets[]) | const char ** |
ParseArgs (const char *progName, int argc, char *argv[], OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown) | bool Phân tích cú pháp một tập hợp các đối số kiểu dòng lệnh, gọi các hàm xử lý để xử lý từng tùy chọn và đối số không phải tùy chọn. |
ParseArgs (const char *progName, int argc, char *argv[], OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler) | bool |
ParseArgs (const char *progName, int argc, char *argv[], OptionSet *optSets[]) | bool |
ParseArgsFromEnvVar (const char *progName, const char *varName, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown) | bool Phân tích cú pháp một tập hợp các đối số từ một biến môi trường được đặt tên. |
ParseArgsFromEnvVar (const char *progName, const char *varName, OptionSet *optSets[]) | bool |
ParseArgsFromEnvVar (const char *progName, const char *varName, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler) | bool |
ParseArgsFromString (const char *progName, const char *argStr, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown) | bool Phân tích cú pháp một tập hợp các đối số từ một chuỗi đã cho. |
ParseArgsFromString (const char *progName, const char *argStr, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler) | bool |
ParseArgsFromString (const char *progName, const char *argStr, OptionSet *optSets[]) | bool |
ParseBoolean (const char *str, bool & output) | bool Phân tích cú pháp một chuỗi dưới dạng giá trị boolean. |
ParseFabricId (const char *str, uint64_t & fabricId, bool allowReserved) | bool Phân tích cú pháp id vải Weave ở dạng văn bản. |
ParseHexString (const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen) | bool Phân tích cú pháp một chuỗi byte được cho ở dạng hex. |
ParseIPAddress (const char *str, IPAddress & output) | bool Phân tích cú pháp địa chỉ IP ở dạng văn bản. |
ParseInt (const char *str, uint64_t & output, int base) | bool Phân tích cú pháp và cố gắng chuyển đổi một chuỗi thành một số nguyên không dấu 64-bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở. |
ParseInt (const char *str, uint32_t & output, int base) | bool Phân tích cú pháp và cố gắng chuyển đổi một chuỗi thành số nguyên không dấu 32 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở. |
ParseInt (const char *str, int32_t & output, int base) | bool Phân tích cú pháp và cố gắng chuyển đổi một chuỗi thành số nguyên có dấu 32 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở. |
ParseInt (const char *str, uint64_t & output) | bool Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành một số nguyên không dấu 64 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở. |
ParseInt (const char *str, uint32_t & output) | bool Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành số nguyên không dấu 32 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở. |
ParseInt (const char *str, int32_t & output) | bool Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành số nguyên có dấu 32 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở. |
ParseInt (const char *str, uint16_t & output) | bool Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành một số nguyên không dấu 16 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở. |
ParseInt (const char *str, int16_t & output) | bool Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành số nguyên có dấu 16 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở. |
ParseInt (const char *str, uint8_t & output) | bool Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành số nguyên không dấu 8 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở. |
ParseNodeId (const char *str, uint64_t & nodeId) | bool Phân tích cú pháp id nút Weave ở dạng văn bản. |
ParseSubnetId (const char *str, uint16_t & subnetId) | bool Phân tích cú pháp và cố gắng chuyển đổi một chuỗi thành ID mạng con 16-bit không dấu, diễn giải chuỗi dưới dạng hệ thập lục phân. |
PrintOptionHelp ( OptionSet *optSets[], FILE *s) | void In văn bản trợ giúp cho một danh sách các tùy chọn được chỉ định vào một luồng. |
PutStringWithBlankLine (FILE *s, const char *str) | void |
PutStringWithNewLine (FILE *s, const char *str) | void |
SplitArgs (char *argStr, char **& argList, char *initialArg) | int32_t |
Các lớp học | |
---|---|
nl :: ArgParser :: HelpOptions | OptionSet chung để xử lý các tùy chọn thông tin (trợ giúp, phiên bản). |
nl :: ArgParser :: OptionSetBase | Một OptionSet trong đó trình xử lý là một hàm ảo. |
Cấu trúc | |
---|---|
nl :: ArgParser :: OptionDef | Xác định một tùy chọn dòng lệnh. |
nl :: ArgParser :: OptionSet | Xác định một nhóm các tùy chọn dòng lệnh liên quan đến logic và có thể sử dụng lại. |
Bảng kê
OptionArgumentType
OptionArgumentType
Xác định các yêu cầu đối số cho một tùy chọn dòng lệnh.
Typedefs
NonOptionArgHandlerFunct
bool(* NonOptionArgHandlerFunct)(const char *progName, int argc, char *argv[])
Một hàm có thể được gọi để xử lý mọi đối số dòng lệnh còn lại, không phải tùy chọn.
OptionHandlerFunct
bool(* OptionHandlerFunct)(const char *progName, OptionSet *optSet, int id, const char *name, const char *arg)
Một hàm có thể được gọi để xử lý một tập hợp các tùy chọn dòng lệnh.
Biến
PrintArgError
void(* PrintArgError)(const char *msg,...) = DefaultPrintArgError
Con trỏ đến hàm được sử dụng để in lỗi xảy ra trong quá trình phân tích cú pháp đối số.
Các ứng dụng nên gọi PrintArgError () để báo cáo lỗi trong các chức năng xử lý đối số tùy chọn và không tùy chọn của chúng, thay vì in trực tiếp tới stdout / stderr.
Mặc định là một con trỏ đến hàm DefaultPrintArgError()
.
gActiveOptionSets
OptionSet ** gActiveOptionSets = NULL
Danh sách các OptionSets được chuyển đến lệnh gọi ParseArgs () hiện đang hoạt động.
Giá trị này sẽ là NULL khi không có lệnh gọi nào đến ParseArgs () đang diễn ra.
Chức năng
CountAllOptions
size_t CountAllOptions( OptionSet *optSets[] )
CountAllOptions
size_t CountAllOptions( OptionSet **optSets )
CountOptionSets
size_t CountOptionSets( OptionSet *optSets[] )
CountOptionSets
size_t CountOptionSets( OptionSet **optSets )
DefaultPrintArgError
void DefaultPrintArgError( const char *msg, ... )
In thông báo lỗi liên quan đến phân tích cú pháp đối số.
Hàm mặc định được sử dụng để in thông báo lỗi phát sinh do phân tích cú pháp các đối số.
Chi tiết | |||
---|---|---|---|
Thông số |
|
Các ứng dụng nên gọi thông qua con trỏ hàm PrintArgError, thay vì gọi trực tiếp hàm này.
FindOptionById
void FindOptionById( OptionSet **optSets, int optId, OptionSet *& optSet, OptionDef *& optDef )
FindOptionByIndex
void FindOptionByIndex( OptionSet **optSets, int optIndex, OptionSet *& optSet, OptionDef *& optDef )
GetNextArg
bool GetNextArg( char *& parsePoint )
IsShortOptionChar
bool IsShortOptionChar( int ch )
MakeLongOptions
struct option * MakeLongOptions( OptionSet **optSets )
MakeShortOptions
char * MakeShortOptions( OptionSet **optSets )
MakeUniqueHelpGroupNamesList
const char ** MakeUniqueHelpGroupNamesList( OptionSet *optSets[] )
ParseArgs
bool ParseArgs( const char *progName, int argc, char *argv[], OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown )
Phân tích cú pháp một tập hợp các đối số kiểu dòng lệnh, gọi các hàm xử lý để xử lý từng tùy chọn và đối số không phải tùy chọn.
ParseArgs () nhận một danh sách các đối số ( argv
) và phân tích cú pháp chúng theo một tập hợp các định nghĩa tùy chọn được cung cấp. Hàm hỗ trợ cả tùy chọn dài (opt) và ngắn (-o) và thực hiện cùng một cú pháp tùy chọn như hàm getopt_long (3) của GNU.
Chi tiết | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Thông số |
| ||||||||||||
Lợi nhuận | true nếu tất cả các tùy chọn và đối số không phải tùy chọn đã được phân tích cú pháp thành công; false nếu một tùy chọn không được công nhận hoặc nếu một trong các hàm xử lý không thành công (tức là trả về false). |
Định nghĩa tùy chọn được truyền cho ParseArgs () như là một mảng của OptionSet cấu trúc ( optSets
). Mỗi OptionSet chứa một loạt các định nghĩa tùy chọn và một hàm xử lý. ParseArgs () xử lý các đối số tùy chọn theo thứ tự đã cho, gọi hàm xử lý tương ứng cho mỗi tùy chọn được công nhận. Khi tất cả các tùy chọn đã được phân tích cú pháp, một hàm xử lý không tùy chọn riêng biệt ( nonOptArgHandler
) được gọi một lần để xử lý bất kỳ đối số còn lại nào.
BỘ LỰA CHỌN
Một OptionSet chứa một tập hợp các định nghĩa tùy chọn cùng với một con trỏ đến một hàm xử lý sẽ được gọi khi gặp một trong các tùy chọn liên quan. Bộ tùy chọn cũng chứa văn bản trợ giúp mô tả cú pháp và mục đích của từng tùy chọn (xem TRỢ GIÚP TÙY CHỌN bên dưới). Các bộ tùy chọn được thiết kế để cho phép tạo các bộ sưu tập có thể sử dụng lại các tùy chọn liên quan. Điều này đơn giản hóa nỗ lực cần thiết để duy trì nhiều ứng dụng chấp nhận các tùy chọn tương tự (ví dụ: ứng dụng thử nghiệm).
Có hai mẫu để định nghĩa OptionSetsone có thể khởi tạo một thể hiện của chính cấu trúc OptionSet , ví dụ như một toàn cục tĩnh hoặc lớp conOptionSetBase và cung cấp một phương thức khởi tạo. Cái sau sử dụng một HandleOption()
ảo thuần túy để ủy quyền xử lý tùy chọn cho lớp con.
Danh sách các OptionSets được chuyển đến hàm ParseArgs () dưới dạng một mảng con trỏ kết thúc bằng NULL. Vd:
static OptionSet gToolOptions = { HandleOption, // handler function gToolOptionDefs, // array of option definitions "GENERAL OPTIONS", // help group gToolOptionHelp // option help text }; static OptionSet *gOptionSets[] = { &gToolOptions, &gNetworkOptions, &gTestingOptions, &gHelpOptions, NULL }; int main(int argc, char *argv[]) { if (!ParseArgs("test-app", argc, argv, gOptionSets)) { ... } }
CÁC ĐỊNH NGHĨA LỰA CHỌN
Các tùy chọn được xác định bằng cấu trúc OptionDef
. Định nghĩa tùy chọn được tổ chức dưới dạng một mảng các phần tử OptionDef , trong đó mỗi phần tử chứa: tên của tùy chọn, id số nguyên được sử dụng để xác định tùy chọn và liệu tùy chọn có mong muốn / cho phép đối số hay không. Phần cuối của mảng tùy chọn được báo hiệu bằng trường NULL Name. Vd:
enum { kOpt_Listen = 1000, kOpt_Length, kOpt_Count, }; static OptionDef gToolOptionDefs[] = { // NAME REQUIRES/ALLOWS ARG? ID/SHORT OPTION CHAR // ============================================================ { "listen", kNoArgument, kOpt_Listen }, { "length", kArgumentRequired, kOpt_Length }, { "count", kArgumentRequired, kOpt_Count }, { "num", kArgumentRequired, kOpt_Count }, // alias for --count { "debug", kArgumentOptional, 'd' }, { "help", kNoArgument, 'h' }, { NULL } };
TÙY CHỌN IDS
Id tùy chọn xác định các tùy chọn đối với mã xử lý chúng (chức năng OptionHandler). Id tùy chọn có liên quan đến OptionSet nơi chúng xuất hiện và do đó có thể được sử dụng lại trên các OptionSets khác nhau (tuy nhiên hãy xem TÙY CHỌN NGẮN HẠN bên dưới). Quy ước chung là bắt đầu đánh số id tùy chọn ở 1000, tuy nhiên bất kỳ số nào> 128 đều có thể được sử dụng. Các tùy chọn bí danh có thể được tạo bằng cách sử dụng cùng một id tùy chọn với các tên tùy chọn khác nhau.
TÙY CHỌN NGẮN
Không giống như getopt_long (3), ParseArgs () không lấy một chuỗi riêng chỉ định danh sách các ký tự tùy chọn ngắn. Thay vào đó, bất kỳ tùy chọn nào có giá trị id nằm trong phạm vi ký tự ASCII đồ họa sẽ cho phép ký tự đó được sử dụng như một tùy chọn ngắn.
ParseArgs () yêu cầu các ký tự tùy chọn ngắn là duy nhất trên tất cả các OptionSets. Do đó, việc sử dụng các tùy chọn ngắn không được khuyến khích đối với bất kỳ Bộ tùy chọn nào được chia sẻ trên các chương trình do cơ hội va chạm đáng kể. Các ký tự tùy chọn ngắn có thể được sử dụng lại trong một OptionSet duy nhất để cho phép tạo các tên tùy chọn dài bí danh.
GIÚP ĐỠ LỰA CHỌN
Mỗi OptionSet chứa một chuỗi OptionHelp
mô tả mục đích và cú pháp của các tùy chọn liên quan. Các chuỗi này được sử dụng bởi hàm PrintOptionHelp()
để tạo thông tin sử dụng tùy chọn.
Theo quy ước, chuỗi trợ giúp tùy chọn bao gồm một ví dụ cú pháp theo sau bởi mô tả văn bản của tùy chọn. Nếu tùy chọn có phiên bản ngắn hoặc tên bí danh, nó sẽ được đặt trước tên dài chính. Để nhất quán, các dòng cú pháp được thụt lề với 2 khoảng trắng, trong khi các dòng mô tả được thụt vào với 7 khoảng trắng. Một dòng trống duy nhất theo sau mỗi mô tả tùy chọn, bao gồm cả dòng cuối cùng.
Vd:
static const char *const gToolOptionHelp = " --listen\n" " Listen and respond to requests sent from another node.\n" "\n" " --length\n" " Send requests with the specified number of bytes in the payload.\n" "\n" " --num, --count \n" " Send the specified number of requests and exit.\n" "\n" " -d, --debug [ ]\n" " Set debug logging to the given level. (Default: 1)\n" "\n" " -h, --help\n" " Print help information.\n" "\n";
TÙY CHỌN NHÓM TRỢ GIÚP
OptionSets chứa một chuỗi HelpGroupName
được sử dụng để nhóm các tùy chọn lại với nhau trong đầu ra trợ giúp. Hàm PrintOptionHelp()
sử dụng HelpGroupName làm tiêu đề phần trong đầu ra sử dụng đã tạo. Nếu nhiều OptionSets có cùng HelpGroupName, PrintOptionHelp () sẽ in trợ giúp tùy chọn cho các OptionSets khác nhau cùng nhau dưới tiêu đề phần chung.
ParseArgs
bool ParseArgs( const char *progName, int argc, char *argv[], OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler )
ParseArgs
bool ParseArgs( const char *progName, int argc, char *argv[], OptionSet *optSets[] )
ParseArgsFromEnvVar
bool ParseArgsFromEnvVar( const char *progName, const char *varName, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown )
Phân tích cú pháp một tập hợp các đối số từ một biến môi trường được đặt tên.
ParseArgsFromEnvVar () đọc một biến môi trường được đặt tên và chuyển giá trị cho ParseArgsFromString()
để phân tích cú pháp. Nếu biến môi trường không được đặt, thì hàm không làm gì cả.
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Thông số |
| ||||||||||
Lợi nhuận | true nếu tất cả các tùy chọn và đối số không phải tùy chọn đã được phân tích cú pháp thành công hoặc nếu biến môi trường được chỉ định không được đặt; false nếu một tùy chọn không được công nhận, nếu một trong các hàm xử lý không thành công (tức là trả về false) hoặc nếu xảy ra lỗi nội bộ. |
ParseArgsFromEnvVar
bool ParseArgsFromEnvVar( const char *progName, const char *varName, OptionSet *optSets[] )
ParseArgsFromEnvVar
bool ParseArgsFromEnvVar( const char *progName, const char *varName, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler )
ParseArgsFromString
bool ParseArgsFromString( const char *progName, const char *argStr, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler, bool ignoreUnknown )
Phân tích cú pháp một tập hợp các đối số từ một chuỗi đã cho.
ParseArgsFromString () chia một chuỗi đã cho ( argStr
) thành một tập hợp các đối số và phân tích cú pháp các đối số bằng cách sử dụng hàm ParseArgs ().
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Thông số |
| ||||||||||
Lợi nhuận | true nếu tất cả các tùy chọn và đối số không phải tùy chọn đã được phân tích cú pháp thành công; false nếu một tùy chọn không được công nhận, nếu một trong các hàm xử lý không thành công (tức là trả về false) hoặc nếu xảy ra lỗi nội bộ. |
Cú pháp của các chuỗi đầu vào tương tự như cú pháp lệnh unix shell, nhưng với lược đồ trích dẫn đơn giản hơn. Đặc biệt:
- Các đối số được phân cách bằng khoảng trắng, trừ khi khoảng trắng được trích dẫn hoặc thoát.
- Dấu gạch chéo ngược thoát khỏi ký tự sau, khiến ký tự đó được coi như một ký tự bình thường. Dấu gạch chéo ngược chính nó bị loại bỏ.
- Dấu ngoặc kép đơn hoặc dấu ngoặc kép bắt đầu / kết thúc chuỗi con được trích dẫn. Trong một chuỗi con, các ký tự đặc biệt duy nhất là dấu gạch chéo ngược, thoát khỏi ký tự tiếp theo và dấu ngoặc kép tương ứng. Các ký tự trích dẫn bắt đầu / kết thúc bị loại bỏ.
Vd:
--listen --count 10 --sw-version '1.0 (DEVELOPMENT)' "--hostname=nest.com"
ParseArgsFromString
bool ParseArgsFromString( const char *progName, const char *argStr, OptionSet *optSets[], NonOptionArgHandlerFunct nonOptArgHandler )
ParseArgsFromString
bool ParseArgsFromString( const char *progName, const char *argStr, OptionSet *optSets[] )
ParseBoolean
bool ParseBoolean( const char *str, bool & output )
Phân tích cú pháp một chuỗi dưới dạng giá trị boolean.
Hàm này chấp nhận các giá trị đầu vào sau (không phân biệt chữ hoa chữ thường): "true", "yes", "t", "y", "1", "false", "no", "f", "n", " 0 ”.
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
| ||||
Lợi nhuận | đúng trên thành công; nếu không, sai về thất bại. |
ParseFainstId
bool ParseFabricId( const char *str, uint64_t & fabricId, bool allowReserved )
Phân tích cú pháp id vải Weave ở dạng văn bản.
Hàm ParseFnaiId () chấp nhận id vải 64-bit được cung cấp ở định dạng hex, có hoặc không có '0x' ở đầu.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
| ||||||
Lợi nhuận | true nếu giá trị được phân tích cú pháp thành công; false nếu không. |
ParseHexString
bool ParseHexString( const char *hexStr, uint32_t strLen, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outDataLen )
Phân tích cú pháp một chuỗi byte được cho ở dạng hex.
ParseHexString () mong đợi đầu vào ở dạng các cặp chữ số hex (chữ hoa hoặc chữ thường). Các cặp hex có thể được phân tách tùy ý bằng bất kỳ ký tự nào sau đây: dấu hai chấm, dấu chấm phẩy, dấu phẩy, dấu chấm hoặc dấu gạch ngang. Ngoài ra, các ký tự khoảng trắng ở bất kỳ đâu trong chuỗi đầu vào bị bỏ qua.
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Thông số |
| ||||||||||
Lợi nhuận | true nếu giá trị được phân tích cú pháp thành công; false nếu dữ liệu đầu vào không đúng định dạng hoặc nếu outBuf quá nhỏ. |
ParseIPAddress
bool ParseIPAddress( const char *str, IPAddress & output )
Phân tích cú pháp địa chỉ IP ở dạng văn bản.
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
| ||||
Lợi nhuận | true nếu giá trị được phân tích cú pháp thành công; false nếu không. |
ParseInt
bool ParseInt( const char *str, uint64_t & output, int base )
Phân tích cú pháp và cố gắng chuyển đổi một chuỗi thành một số nguyên không dấu 64-bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
| ||||||
Lợi nhuận | đúng trên thành công; ngược lại, sai về thất bại. |
ParseInt
bool ParseInt( const char *str, uint32_t & output, int base )
Phân tích cú pháp và cố gắng chuyển đổi một chuỗi thành số nguyên không dấu 32 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
| ||||||
Lợi nhuận | đúng trên thành công; nếu không, sai về thất bại. |
ParseInt
bool ParseInt( const char *str, int32_t & output, int base )
Phân tích cú pháp và cố gắng chuyển đổi một chuỗi thành số nguyên có dấu 32 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
| ||||||
Lợi nhuận | đúng trên thành công; nếu không, sai về thất bại. |
ParseInt
bool ParseInt( const char *str, uint64_t & output )
Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành một số nguyên không dấu 64 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở.
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
| ||||
Lợi nhuận | đúng trên thành công; nếu không, sai về thất bại. |
ParseInt
bool ParseInt( const char *str, uint32_t & output )
Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành số nguyên không dấu 32 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở.
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
| ||||
Lợi nhuận | đúng trên thành công; nếu không, sai về thất bại. |
ParseInt
bool ParseInt( const char *str, int32_t & output )
Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành số nguyên có dấu 32 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở.
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
| ||||
Lợi nhuận | đúng trên thành công; nếu không, sai về thất bại. |
ParseInt
bool ParseInt( const char *str, uint16_t & output )
Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành một số nguyên không dấu 16 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở.
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
| ||||
Lợi nhuận | đúng trên thành công; nếu không, sai về thất bại. |
ParseInt
bool ParseInt( const char *str, int16_t & output )
Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành số nguyên có dấu 16 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở.
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
| ||||
Lợi nhuận | đúng trên thành công; nếu không, sai về thất bại. |
ParseInt
bool ParseInt( const char *str, uint8_t & output )
Phân tích cú pháp và cố gắng chuyển đổi một chuỗi được hiểu là giá trị thập phân thành số nguyên không dấu 8 bit, áp dụng cách diễn giải thích hợp dựa trên tham số cơ sở.
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
| ||||
Lợi nhuận | đúng trên thành công; nếu không, sai về thất bại. |
ParseNodeId
bool ParseNodeId( const char *str, uint64_t & nodeId )
Phân tích cú pháp id nút Weave ở dạng văn bản.
Hàm ParseNodeId () chấp nhận id nút 64 bit được cung cấp ở định dạng hex (có hoặc không có '0x' ở đầu) hoặc các từ 'bất kỳ' hoặc 'tất cả' được hiểu là có nghĩa là id nút bất kỳ (0xFFFFFFFFFFFFFFFF) .
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
| ||||
Lợi nhuận | true nếu giá trị được phân tích cú pháp thành công; false nếu không. |
ParseSubnetId
bool ParseSubnetId( const char *str, uint16_t & subnetId )
Phân tích cú pháp và cố gắng chuyển đổi một chuỗi thành ID mạng con 16-bit không dấu, diễn giải chuỗi dưới dạng hệ thập lục phân.
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
| ||||
Lợi nhuận | đúng trên thành công; ngược lại, sai về thất bại. |
PrintOptionHelp
void PrintOptionHelp( OptionSet *optSets[], FILE *s )
In văn bản trợ giúp cho một danh sách các tùy chọn được chỉ định vào một luồng.
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
PutStringWithBlankLine
void PutStringWithBlankLine( FILE *s, const char *str )
PutStringWithNewLine
void PutStringWithNewLine( FILE *s, const char *str )
SplitArgs
int32_t SplitArgs( char *argStr, char **& argList, char *initialArg )