1*30da1778Schristos /*
2*30da1778Schristos * This file is part of flex.
3*30da1778Schristos *
4*30da1778Schristos * Redistribution and use in source and binary forms, with or without
5*30da1778Schristos * modification, are permitted provided that the following conditions
6*30da1778Schristos * are met:
7*30da1778Schristos *
8*30da1778Schristos * 1. Redistributions of source code must retain the above copyright
9*30da1778Schristos * notice, this list of conditions and the following disclaimer.
10*30da1778Schristos * 2. Redistributions in binary form must reproduce the above copyright
11*30da1778Schristos * notice, this list of conditions and the following disclaimer in the
12*30da1778Schristos * documentation and/or other materials provided with the distribution.
13*30da1778Schristos *
14*30da1778Schristos * Neither the name of the University nor the names of its contributors
15*30da1778Schristos * may be used to endorse or promote products derived from this software
16*30da1778Schristos * without specific prior written permission.
17*30da1778Schristos *
18*30da1778Schristos * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
19*30da1778Schristos * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
20*30da1778Schristos * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21*30da1778Schristos * PURPOSE.
22*30da1778Schristos */
23*30da1778Schristos
24*30da1778Schristos #include "multiple_scanners_nr_1.h"
25*30da1778Schristos #include "multiple_scanners_nr_2.h"
26*30da1778Schristos
27*30da1778Schristos int
main(int argc,char ** argv)28*30da1778Schristos main ( int argc, char** argv )
29*30da1778Schristos {
30*30da1778Schristos (void)argc;
31*30da1778Schristos (void)argv;
32*30da1778Schristos
33*30da1778Schristos int S1_ok=1, S2_ok=1;
34*30da1778Schristos YY_BUFFER_STATE buff1, buff2;
35*30da1778Schristos S1_out = S2_out = stdout;
36*30da1778Schristos buff1 = S1__scan_string("foo on bar off");
37*30da1778Schristos buff2 = S2__scan_string("on blah blah off foo on bar off");
38*30da1778Schristos
39*30da1778Schristos /* scan simultaneously. */
40*30da1778Schristos while(S1_ok || S2_ok)
41*30da1778Schristos {
42*30da1778Schristos if (S1_ok)
43*30da1778Schristos S1_ok = S1_lex();
44*30da1778Schristos if (S2_ok)
45*30da1778Schristos S2_ok = S2_lex();
46*30da1778Schristos }
47*30da1778Schristos S1__delete_buffer(buff1);
48*30da1778Schristos S2__delete_buffer(buff2);
49*30da1778Schristos printf("TEST RETURNING OK.\n");
50*30da1778Schristos return 0;
51*30da1778Schristos }
52