X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=docs%2FCommandLine.rst;h=556c302501e25d8b5a4347d0ce1a133c35b3f2af;hb=7197ef7e0d1d696799afc1a0dedf838b2213901d;hp=4c84d23297b45c789561630e27365a861f0824fc;hpb=fe76696ca4aad01dc70f819f95121d8e82373e0e;p=oota-llvm.git diff --git a/docs/CommandLine.rst b/docs/CommandLine.rst index 4c84d23297b..556c302501e 100644 --- a/docs/CommandLine.rst +++ b/docs/CommandLine.rst @@ -1276,7 +1276,7 @@ The ``cl::getRegisteredOptions`` function ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The ``cl::getRegisteredOptions`` function is designed to give a programmer -access to declared non positional command line options so that how they appear +access to declared non-positional command line options so that how they appear in ``-help`` can be modified prior to calling `cl::ParseCommandLineOptions`_. Note this method should not be called during any static initialisation because it cannot be guaranteed that all options will have been initialised. Hence it @@ -1630,13 +1630,13 @@ To start out, we declare our new ``FileSizeParser`` class: .. code-block:: c++ - struct FileSizeParser : public cl::basic_parser { + struct FileSizeParser : public cl::parser { // parse - Return true on error. - bool parse(cl::Option &O, const char *ArgName, const std::string &ArgValue, + bool parse(cl::Option &O, StringRef ArgName, const std::string &ArgValue, unsigned &Val); }; -Our new class inherits from the ``cl::basic_parser`` template class to fill in +Our new class inherits from the ``cl::parser`` template class to fill in the default, boiler plate code for us. We give it the data type that we parse into, the last argument to the ``parse`` method, so that clients of our custom parser know what object type to pass in to the parse method. (Here we declare @@ -1652,7 +1652,7 @@ implement ``parse`` as: .. code-block:: c++ - bool FileSizeParser::parse(cl::Option &O, const char *ArgName, + bool FileSizeParser::parse(cl::Option &O, StringRef ArgName, const std::string &Arg, unsigned &Val) { const char *ArgStart = Arg.c_str(); char *End; @@ -1698,7 +1698,7 @@ Which adds this to the output of our program: OPTIONS: -help - display available options (-help-hidden for more) ... - -max-file-size= - Maximum file size to accept + -max-file-size= - Maximum file size to accept And we can test that our parse works correctly now (the test program just prints out the max-file-size argument value): @@ -1737,6 +1737,7 @@ exported by the ``lib/VMCore/PassManager.cpp`` file. .. _dynamically loaded options: Dynamically adding command line options +--------------------------------------- .. todo::