From 6d1171ad6f483f96e109937b683336c8fffd991a Mon Sep 17 00:00:00 2001 From: rlar Date: Mon, 21 Mar 2016 17:42:25 +0100 Subject: [PATCH] skip-ws, #2/6, introduce "ngspice/stringskip.h" with some temporary macros to skip whitespace --- src/frontend/com_let.c | 1 + src/frontend/cpitf.c | 1 + src/frontend/dimens.c | 1 + src/frontend/help/textdisp.c | 1 + src/frontend/inp.c | 1 + src/frontend/newcoms.c | 1 + src/frontend/numparam/spicenum.c | 1 + src/frontend/nutinp.c | 1 + src/frontend/plotting/graf.c | 1 + src/frontend/subckt.c | 1 + src/frontend/vectors.c | 1 + src/include/ngspice/stringskip.h | 8 ++++++++ src/misc/string.c | 1 + src/misc/tilde.c | 1 + src/spicelib/parser/inp2r.c | 1 + 15 files changed, 22 insertions(+) create mode 100644 src/include/ngspice/stringskip.h diff --git a/src/frontend/com_let.c b/src/frontend/com_let.c index cca29a2b5..e5b1347b9 100644 --- a/src/frontend/com_let.c +++ b/src/frontend/com_let.c @@ -4,6 +4,7 @@ #include "ngspice/ngspice.h" #include "ngspice/fteext.h" #include "ngspice/cpextern.h" +#include "ngspice/stringskip.h" #include "com_let.h" #include "com_display.h" diff --git a/src/frontend/cpitf.c b/src/frontend/cpitf.c index 74edaecbf..2412405ff 100644 --- a/src/frontend/cpitf.c +++ b/src/frontend/cpitf.c @@ -8,6 +8,7 @@ Author: 1985 Wayne A. Christopher, U. C. Berkeley CAD Group #include "ngspice/ftedefs.h" #include "ngspice/dvec.h" #include "ngspice/fteparse.h" +#include "ngspice/stringskip.h" #include "cpitf.h" #include "com_let.h" #include "com_set.h" diff --git a/src/frontend/dimens.c b/src/frontend/dimens.c index cc15cf0b1..8f52fdf0f 100644 --- a/src/frontend/dimens.c +++ b/src/frontend/dimens.c @@ -10,6 +10,7 @@ Author: 1992 David A. Gates, U. C. Berkeley CAD Group #include "ngspice/ngspice.h" #include "ngspice/dvec.h" /* For MAXDIMS */ #include "dimens.h" +#include "ngspice/stringskip.h" /* diff --git a/src/frontend/help/textdisp.c b/src/frontend/help/textdisp.c index 24929ba6b..3596840bd 100644 --- a/src/frontend/help/textdisp.c +++ b/src/frontend/help/textdisp.c @@ -15,6 +15,7 @@ Author: 1986 Wayne A. Christopher, U. C. Berkeley CAD Group #include "ngspice/cpdefs.h" #include "ngspice/hlpdefs.h" #include "ngspice/suffix.h" +#include "ngspice/stringskip.h" static topic *curtop; static bool quitflag; diff --git a/src/frontend/inp.c b/src/frontend/inp.c index 4eb3e24c1..fe56520c3 100644 --- a/src/frontend/inp.c +++ b/src/frontend/inp.c @@ -39,6 +39,7 @@ Author: 1985 Wayne A. Christopher #endif #include "numparam/numpaif.h" +#include "ngspice/stringskip.h" #define line_free(line, flag) \ diff --git a/src/frontend/newcoms.c b/src/frontend/newcoms.c index b318532eb..bb50aa4d3 100644 --- a/src/frontend/newcoms.c +++ b/src/frontend/newcoms.c @@ -11,6 +11,7 @@ Copyright 1992 Regents of the University of California. All rights reserved. #include "ngspice/ftedefs.h" #include "ngspice/fteparse.h" #include "ngspice/dvec.h" +#include "ngspice/stringskip.h" #include "newcoms.h" #include "quote.h" diff --git a/src/frontend/numparam/spicenum.c b/src/frontend/numparam/spicenum.c index a2ec85439..e30f21845 100644 --- a/src/frontend/numparam/spicenum.c +++ b/src/frontend/numparam/spicenum.c @@ -27,6 +27,7 @@ Todo: #include "numparam.h" #include "ngspice/fteext.h" +#include "ngspice/stringskip.h" #ifdef SHARED_MODULE extern ATTRIBUTE_NORETURN void shared_exit(int status); diff --git a/src/frontend/nutinp.c b/src/frontend/nutinp.c index 16c3cb4f3..ec4e6c79b 100644 --- a/src/frontend/nutinp.c +++ b/src/frontend/nutinp.c @@ -12,6 +12,7 @@ Author: 1985 Wayne A. Christopher #include "ngspice/ftedefs.h" #include "ngspice/dvec.h" #include "ngspice/fteinp.h" +#include "ngspice/stringskip.h" #include "nutinp.h" #include "variable.h" #include "../misc/mktemp.h" diff --git a/src/frontend/plotting/graf.c b/src/frontend/plotting/graf.c index cc38c242e..237fcb099 100644 --- a/src/frontend/plotting/graf.c +++ b/src/frontend/plotting/graf.c @@ -29,6 +29,7 @@ Author: 1988 Jeffrey M. Hsu #include "../breakp2.h" #include "../display.h" #include "../runcoms.h" +#include "ngspice/stringskip.h" static void gr_start_internal(struct dvec *dv, bool copyvec); diff --git a/src/frontend/subckt.c b/src/frontend/subckt.c index f9618cbdb..3ff5eb025 100644 --- a/src/frontend/subckt.c +++ b/src/frontend/subckt.c @@ -59,6 +59,7 @@ Modified: 2000 AlansFixes #include "ngspice/cpdefs.h" #include "ngspice/ftedefs.h" #include "ngspice/fteinp.h" +#include "ngspice/stringskip.h" #include diff --git a/src/frontend/vectors.c b/src/frontend/vectors.c index 14e43ccfa..2165e2bd6 100644 --- a/src/frontend/vectors.c +++ b/src/frontend/vectors.c @@ -12,6 +12,7 @@ Author: 1985 Wayne A. Christopher, U. C. Berkeley CAD Group #include "ngspice/ftedefs.h" #include "ngspice/dvec.h" #include "ngspice/sim.h" +#include "ngspice/stringskip.h" #include "circuits.h" #include "completion.h" diff --git a/src/include/ngspice/stringskip.h b/src/include/ngspice/stringskip.h new file mode 100644 index 000000000..b5047fe82 --- /dev/null +++ b/src/include/ngspice/stringskip.h @@ -0,0 +1,8 @@ +#ifndef ngspice_STRINGSKIP_H +#define ngspice_STRINGSKIP_H + +#define TEMPORARY_SKIP_NON_WS_X0(s) do { while (*(s) && !isspace_c(*(s))) (s)++; } while(0) +#define TEMPORARY_SKIP_WS_X0(s) do { while (*(s) && isspace_c(*(s))) (s)++; } while(0) +#define TEMPORARY_SKIP_WS_X1(s) do { while ( isspace_c(*(s))) (s)++; } while(0) + +#endif diff --git a/src/misc/string.c b/src/misc/string.c index 8da33d5d8..e49500af3 100644 --- a/src/misc/string.c +++ b/src/misc/string.c @@ -8,6 +8,7 @@ Copyright 1990 Regents of the University of California. All rights reserved. #include "ngspice/ngspice.h" #include "ngspice/stringutil.h" +#include "ngspice/stringskip.h" #include "ngspice/dstring.h" #include diff --git a/src/misc/tilde.c b/src/misc/tilde.c index 9f9741c9a..c5f4e4f6f 100644 --- a/src/misc/tilde.c +++ b/src/misc/tilde.c @@ -5,6 +5,7 @@ Modified: 2002 R. Oktas, #include "ngspice/ngspice.h" #include "tilde.h" +#include "ngspice/stringskip.h" #ifdef HAVE_PWD_H #include diff --git a/src/spicelib/parser/inp2r.c b/src/spicelib/parser/inp2r.c index 66d5a34c2..3752acb51 100644 --- a/src/spicelib/parser/inp2r.c +++ b/src/spicelib/parser/inp2r.c @@ -13,6 +13,7 @@ Remarks: This code is based on a version written by Serban Popescu which #include "ngspice/inpmacs.h" #include "ngspice/fteext.h" #include "inpxx.h" +#include "ngspice/stringskip.h" /* undefine to add tracing to this file */ /* #define TRACE */