161 lines
4.2 KiB
Text
161 lines
4.2 KiB
Text
$NetBSD: patch-av,v 1.1.1.1 2000/08/25 16:15:53 jlam Exp $
|
|
|
|
--- src/lib/cmdarg.c.orig Thu Jan 2 13:33:32 1997
|
|
+++ src/lib/cmdarg.c
|
|
@@ -10,18 +10,26 @@
|
|
//
|
|
// 03/01/93 Brad Appleton <bradapp@enteract.com>
|
|
// - Added arg_sequence field to CmdArg
|
|
+//
|
|
+// 08/16/00 Johnny Lam <lamj@stat.cmu.edu>
|
|
+// - Wrapped in namespace cmdline
|
|
+// - Updated to follow ISO C++ standard
|
|
//-^^---------------------------------------------------------------------
|
|
|
|
-#include <stdlib.h>
|
|
-#include <iostream.h>
|
|
-#include <string.h>
|
|
-#include <ctype.h>
|
|
+#include <cstdlib>
|
|
+#include <cstring>
|
|
+#include <cctype>
|
|
+#include <iostream>
|
|
|
|
#include "cmdline.h"
|
|
|
|
+namespace cmdline {
|
|
+
|
|
+using std::cerr;
|
|
+
|
|
//---------------------------------------------------------------------- CmdArg
|
|
|
|
-int CmdArg::is_dummy(void) { return 0; }
|
|
+int CmdArg::is_dummy() { return 0; }
|
|
|
|
// Copy-Constructor
|
|
CmdArg::CmdArg(const CmdArg & cp)
|
|
@@ -35,8 +43,8 @@
|
|
arg_description(cp.arg_description)
|
|
{
|
|
if (alloc_value_name) {
|
|
- char * val_name = new char[::strlen(cp.arg_value_name) + 1] ;
|
|
- ::strcpy((char *)val_name, cp.arg_value_name);
|
|
+ char * val_name = new char[std::strlen(cp.arg_value_name) + 1] ;
|
|
+ std::strcpy((char *)val_name, cp.arg_value_name);
|
|
arg_value_name = val_name;
|
|
}
|
|
}
|
|
@@ -47,7 +55,7 @@
|
|
const char * keyword,
|
|
const char * value,
|
|
const char * description,
|
|
- unsigned syntax_flags)
|
|
+ unsigned int syntax_flags)
|
|
: alloc_value_name(0),
|
|
arg_flags(0),
|
|
arg_syntax(syntax_flags),
|
|
@@ -66,7 +74,7 @@
|
|
CmdArg::CmdArg(char optchar,
|
|
const char * keyword,
|
|
const char * description,
|
|
- unsigned syntax_flags)
|
|
+ unsigned int syntax_flags)
|
|
: alloc_value_name(0),
|
|
arg_flags(0),
|
|
arg_syntax(syntax_flags),
|
|
@@ -83,7 +91,7 @@
|
|
|
|
CmdArg::CmdArg(const char * value,
|
|
const char * description,
|
|
- unsigned syntax_flags)
|
|
+ unsigned int syntax_flags)
|
|
: alloc_value_name(0),
|
|
arg_flags(0),
|
|
arg_syntax(syntax_flags),
|
|
@@ -100,7 +108,7 @@
|
|
|
|
|
|
// Destructor
|
|
-CmdArg::~CmdArg(void)
|
|
+CmdArg::~CmdArg()
|
|
{
|
|
if (alloc_value_name) delete [] (char *)arg_value_name;
|
|
}
|
|
@@ -110,7 +118,7 @@
|
|
// ^FUNCTION: adjust_syntax - adjust command argument syntax
|
|
//
|
|
// ^SYNOPSIS:
|
|
-// CmdArg::adjust_syntax(void)
|
|
+// CmdArg::adjust_syntax()
|
|
//
|
|
// ^PARAMETERS:
|
|
// None.
|
|
@@ -134,7 +142,7 @@
|
|
// Follow along in the code ...
|
|
//-^^----------------
|
|
void
|
|
-CmdArg::adjust_syntax(void)
|
|
+CmdArg::adjust_syntax()
|
|
{
|
|
static const char default_value_name[] = "value" ;
|
|
|
|
@@ -207,7 +215,7 @@
|
|
// ^FUNCTION: parse_description - parse the argument description string
|
|
//
|
|
// ^SYNOPSIS:
|
|
-// CmdLine::parse_description(void)
|
|
+// CmdLine::parse_description()
|
|
//
|
|
// ^PARAMETERS:
|
|
// None.
|
|
@@ -233,7 +241,7 @@
|
|
enum { c_HIDDEN = ';', c_OPEN = '[', c_CLOSE = ']', c_LIST = '.' } ;
|
|
|
|
void
|
|
-CmdArg::parse_description(void)
|
|
+CmdArg::parse_description()
|
|
{
|
|
if (arg_description == NULL) return;
|
|
while (isspace(*arg_description)) ++arg_description;
|
|
@@ -249,7 +257,7 @@
|
|
// ^FUNCTION: parse_value - parse the argument value name
|
|
//
|
|
// ^SYNOPSIS:
|
|
-// CmdLine::parse_value(void)
|
|
+// CmdLine::parse_value()
|
|
//
|
|
// ^PARAMETERS:
|
|
// None.
|
|
@@ -274,7 +282,7 @@
|
|
// Its kind of hairy so follow along.
|
|
//-^^----------------
|
|
void
|
|
-CmdArg::parse_value(void)
|
|
+CmdArg::parse_value()
|
|
{
|
|
const char * save_value = arg_value_name;
|
|
int brace = 0;
|
|
@@ -306,7 +314,7 @@
|
|
alloc_value_name = 1;
|
|
int len = (int) (ptr - arg_value_name);
|
|
char * copied_value = new char[len + 1];
|
|
- (void) ::strncpy(copied_value, arg_value_name, len);
|
|
+ std::strncpy(copied_value, arg_value_name, len);
|
|
copied_value[len] = '\0';
|
|
arg_value_name = copied_value;
|
|
|
|
@@ -338,7 +346,7 @@
|
|
}
|
|
|
|
// Not done - we had better see a "..."
|
|
- if (::strncmp(ptr, "...", 3) != 0) {
|
|
+ if (std::strncmp(ptr, "...", 3) != 0) {
|
|
cerr << "Error: unexpected token \"" << ptr << "\"." << endl ;
|
|
++errors;
|
|
} else {
|
|
@@ -365,3 +373,5 @@
|
|
<< "\t(error occurred in CmdArg constructor)" << endl ;
|
|
}
|
|
}
|
|
+
|
|
+} // namespace cmdline
|