X-Git-Url: https://git.harvie.cz/?p=svn%2FPrometheus-QoS%2F.git;a=blobdiff_plain;f=cll1.h;h=cd6e685144ebe772a2954ba2d9a28b0b6c8ded11;hp=d2b2211ff1be269dbf650b13f36793e657616963;hb=7619acd541d905096bdaa7b1908554e8f4fc208a;hpb=a4f661fc8c4d2ef31306e8d4d6f8b0b310623919 diff --git a/cll1.h b/cll1.h index d2b2211..cd6e685 100644 --- a/cll1.h +++ b/cll1.h @@ -1,8 +1,8 @@ -/* C<<1 header file v0.6 - style sheet for ANSI C */ +/* C<<1 header file v0.6.1 - style sheet for ANSI C */ /* Please pronounce as "cee-shift-left-by-one" :) */ -/* Copyright (G) 2004-2006 Michael xChaos Polak, x@n.cz +/* Copyright (G) 2004-2007 Michael xChaos Polak, x(at)n.cz The C<<1 header file is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public @@ -24,7 +24,10 @@ #include #include +#include +#include #include +#include /* Section For Dummies part 1, updated 2004-05-07 by xCh. */ @@ -74,7 +77,7 @@ #define duplicate(A,B) if(A) { string(B,strlen(A)+1); strcpy(B,A); } #define concatenate(A,B,C) if (A && B) { string(C,strlen(A)+strlen(B)+1); strcpy(C,A); strcat(C,B); } #define suffix(A,B,C) (((A=strrchr(B,C))&&!(*(A++)=0))||(A=B)) -#define prefix(A,B,C) ((A=B)&&((B=strchr(B,C))&&!(*(B++)=0)||(B=A))) +#define prefix(A,B,C) ((A=B)&&(((B=strchr(B,C))&&!(*(B++)=0))||(B=A))) #define gotoalpha(CHAR) if(CHAR)while(*CHAR && !isalpha(*CHAR))CHAR++ #define goto_alpha(CHAR) if(CHAR)while(*CHAR && !isalpha(*CHAR) && *CHAR!='_')CHAR++ #define gotoalnum(CHAR) if(CHAR)while(*CHAR && !isalnum(*CHAR))CHAR++ @@ -112,6 +115,7 @@ #define option(STR,SETVAR) if(_){char *_K,*_V,*_O,*_Q; duplicate(_,_Q); _O=_Q; tr(_O,'\t',' '); prefix(_K,_O,' '); if(eq(STR,_K)) {skipspaces(_O); prefix(_V,_O,'#'); cutspaces(_V); SETVAR=_V; _=NULL;} else free(_Q);} #define ioption(STR,SETVAR) if(_){char *_K,*_V,*_O,*_Q; duplicate(_,_Q); _O=_Q; tr(_O,'\t',' '); prefix(_K,_O,' '); if(eq(STR,_K)) {skipspaces(_O); prefix(_V,_O,'#'); cutspaces(_V); SETVAR=atoi(_V); _=NULL;} free(_Q);} #define loption(STR,SETVAR) if(_){char *_K,*_V,*_O,*_Q; duplicate(_,_Q); _O=_Q; tr(_O,'\t',' '); prefix(_K,_O,' '); if(eq(STR,_K)) {skipspaces(_O); prefix(_V,_O,'#'); cutspaces(_V); SETVAR=atol(_V); _=NULL;} free(_Q);} +#define lloption(STR,SETVAR) if(_){char *_K,*_V,*_O,*_Q; duplicate(_,_Q); _O=_Q; tr(_O,'\t',' '); prefix(_K,_O,' '); if(eq(STR,_K)) {skipspaces(_O); prefix(_V,_O,'#'); cutspaces(_V); SETVAR=atoll(_V); _=NULL;} free(_Q);} /* Dynamic list advanced I/O, updated 2003-05-30 by xCh. */