]> git.donarmstrong.com Git - lilypond.git/blobdiff - flower/include/getopt-long.hh
Issue 5167/6: Changes: show \markup xxx = ... \etc assignments
[lilypond.git] / flower / include / getopt-long.hh
index a0992c98e6f0e03ccfc7ff91f27061ff85bcce55..52c819822c0facc1b68405ae4f7b6fc33378e840 100644 (file)
@@ -1,72 +1,78 @@
 #ifndef GETOPT_LONG_HH
 #define GETOPT_LONG_HH
 
-#include <ostream.h> /* gcc 3.0 */
-#include "string.hh"
+#include <cstdio>
+
+#include "std-string.hh"
 
 /**
-  a struct this for initialising the commandline options.
- */
-struct Long_option_init {
-  char const * take_arg_sz_;
-  char const * longname_sz_;
-  char        shortname_ch_;
-
-  char const * help_sz_;
-  
-  String str () const;
-  String str_for_help () const;
+   a struct this for initialising the commandline options.
+*/
+struct Long_option_init
+{
+  char const *take_arg_str0_;
+  char const *longname_str0_;
+
+  /*
+    = 0: don't take short version.
+  */
+  char shortname_char_;
+
+  char const *help_str0_;
+
+  string to_string () const;
+  string str_for_help () const;
   //   NO constructor!
 
-  static int compare (Long_option_init const&,Long_option_init const&);
-  static String table_str (Long_option_init *); 
+  static int compare (Long_option_init const &, Long_option_init const &);
+  static string table_string (Long_option_init *);
 };
 
-
 /** C++ for version of long_getopt.  For processing GNU style command
-  line arguments.  No pointer (return values, arguments) contents are
-  copied.
-  
-  TODO: handle 
-  command  - , and command --
-  
-  argument reordering
-  */
-class Getopt_long {
+    line arguments.  No pointer (return values, arguments) contents are
+    copied.
+
+    TODO: handle
+    command  - , and command --
+
+    argument reordering
+*/
+class Getopt_long
+{
 
   /// the option info.
   const Long_option_init *option_a_;
-  int table_len_i_;
-    
-  /// if doing short option, arg_value_ch_a_a_[optind][optindind] is processed next.
-  int argument_index_i_;
+  int table_len_;
 
-  /// the option found
-  const Long_option_init *found_option_l_;
+  /// if doing short option, arg_value_char_a_a_[optind][optindind] is processed next.
+  int argument_index_;
 
+  /// the option found
+  const Long_option_init *found_option_;
 
-public: 
+public:
   /** errorcodes: no error, argument expected, no argument expected,
-    unknown option, illegal argument (eg. int expected).  */
+      unknown option, illegal argument (eg. int expected).  */
   enum Errorcod { E_NOERROR = 0, E_ARGEXPECT, E_NOARGEXPECT, E_UNKNOWNOPTION,
-                 E_ILLEGALARG } ;
+                  E_ILLEGALARG
+                };
 
   /// argument. Set to 0 if not present
-  char const * optional_argument_ch_C_;
+  char const *optional_argument_str0_;
 
   /// current error status
   Errorcod error_;
 
-  /// arg_value_ch_a_a_[array_index_i_] will be processed next.
-  int array_index_i_;
+  /// arg_value_char_a_a_[array_index_] will be processed next.
+  int array_index_;
 
   /// the arguments
-  char **arg_value_ch_a_a_;
+  char **arg_value_char_a_a_;
 
   /// the arg. count
-  int argument_count_i_;
+  int argument_count_;
 
-  ostream *error_ostream_l_;
+  FILE *error_out_;
 
 public:
   /// get ready for processing next error.
@@ -79,30 +85,28 @@ public:
   /// report an error and abort
   void report (Errorcod c);
 
-
   /// return an integer (with err. detect)
-  long argument_to_i ();
-    
+  long get_argument_index ();
+
   /**
-    What to do with  errors. 
-    report messages on  #*os#, and abort.
-    if #os# is null, then do not report nor abort, just set #error#
-    */
-       
-  void seterror (ostream *os);
+     What to do with  errors.
+     report messages on  #*os#, and abort.
+     if #os# is null, then do not report nor abort, just set #error#
+  */
+
+  void seterror (FILE *os);
 
   /// construct: pass arguments and option info.
-  Getopt_long (int c,  char **v, Long_option_init *lo);
+  Getopt_long (int c, char **v, Long_option_init *lo);
 
-  /**  get the next option. 
-    @return pointer to next option found.
-    0 if error occurred, or next argument is no option.
-    */
+  /**  get the next option.
+       @return pointer to next option found.
+       0 if error occurred, or next argument is no option.
+  */
   const Long_option_init *operator () ();
 
   char const *current_arg ();
-  char const * get_next_arg ();
+  char const *get_next_arg ();
 };
 
 #endif // GETOPT_LONG_HH