int main (int argc, char **argv) { char buf[1024]; int i; SLprep_Type *pt; if (isatty (0)) usage (); if (NULL == (pt = SLprep_new ())) return 1; if ((-1 == SLprep_set_prefix (pt, "!")) || (-1 == SLprep_set_comment (pt, "#", "")) || (-1 == SLprep_set_flags (pt, SLPREP_BLANK_LINES_OK | SLPREP_COMMENT_LINES_OK))) { SLprep_delete (pt); return 1; } for (i = 1; i < argc; i++) SLdefine_for_ifdef (argv[i]); while (NULL != fgets (buf, sizeof (buf) - 1, stdin)) { if (SLprep_line_ok (buf, pt)) { fputs (buf, stdout); } } SLprep_delete (pt); return 0; }
/*{{{ SLprep_open_prep (), SLprep_close_prep () */ SLprep_Type *SLprep_new (void) { SLprep_Type *pt; if (NULL == (pt = (SLprep_Type *)SLcalloc (1, sizeof (SLprep_Type)))) return NULL; if (-1 == SLprep_set_comment (pt, "%", "")) { SLprep_delete (pt); return NULL; } if (-1 == SLprep_set_prefix (pt, "#")) { SLprep_delete (pt); return NULL; } return pt; }